- 1、本文档共8页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
MC9S12XS128 串口操作例程
MC9S12XS128 串口操作例程 Code Warrior 4.7Target : MC9S12XS128Crystal: 16.000Mhzbusclock: 8.000MHzpllclock:16.000MHz
本程序主要包括以下功能:1.设置锁相环和总线频率;2.IO口使用;3.共四路ATD使用及显示方法。LED计数,根据灯亮可以读取系统循环了多少次*****************************************************************************************/
#include hidef.h????? /* common defines and macros */#include MC9S12XS128.h???? /* derivative information */#include ctype.h#include string.h#include stdarg.h
#pragma LINK_INFO DERIVATIVE mc9s12xs128
#pragma CODE_SEG DEFAULT#define CR_as_CRLF? TRUE???????????? // if true , you can use \n to act as CR/LF,???????????????????????????????????? // if false, you have to use \n\r,but can get a higher speed?static int do_padding;static int left_flag;static int len;static int num1;static int num2;static char pad_character;
unsigned char uart_getkey(void){??? while(!(SCI0SR10x80)) ; ?? //keep waiting when not empty??? return SCI0DRL;}/*void uart_init(void) {? SCI0CR2=0x0c;? SCI0BDH=0x00;//16MHz,19200bps,SCI0BDL=0x1a? SCI0BDL=0x34;//16MHz,9600bps,SCI0BDL=0x34}*/void uart_putchar(unsigned char ch){? if (ch == \n)?? {????? while(!(SCI0SR10x80)) ;????????? SCI0DRL= 0x0d;?????? ???? //outputCR???? return;? }? while(!(SCI0SR10x80)) ; ????? //keep waiting when not empty?? SCI0DRL=ch;}
void putstr(char ch[]){? unsigned char ptr=0;? while(ch[ptr]){????? uart_putchar((unsigned char)ch[ptr++]);? }?????}????????????????????????????????????????????????static void padding( const int l_flag){?? int i;
?? if (do_padding l_flag (len num1))????? for (i=len; inum1; i++)????????? uart_putchar( pad_character);}
static void outs( char* lp){? /* pad on left if needed????????????????????????? */? len = strlen( lp);? padding( !left_flag);
? /* Move string to the buffer????????????????????? */? while (*lp num2--)? uart_putchar( *lp++);
? /* Pad on right if needed???????????????????????? */? len = strlen( lp);? padding( left_flag);}
static void reoutnum(unsigned long
您可能关注的文档
- 高中英语高级词汇.docx
- 新世纪大学英语(第二版)综合教程第3册(试用版)第8单元 unit8.doc
- vxvm 命令集.docx
- Unit 7 Learning about English Teaching plan全新版大学英语二.doc
- PACSAL函数.docx
- 2017年高三昆一中第一次模考.docx
- 华图-数字推理.doc
- 高二英语选修7期中考试试卷.doc
- zigbee2006协议栈硬件层修改说明.doc
- 2005年9月至2007年3月中高口笔译题目.docx
- 金融产品2024年投资策略报告:积极适应市场风格,行为金融+机器学习新发现.pdf
- 交运物流2024年度投资策略:转型十字路,峰回路又转(2023120317).pdf
- 建材行业2024年投资策略报告:板块持续磨底,重点关注需求侧复苏.pdf
- 宏观2024年投资策略报告:复苏之路.pdf
- 光储氢2024年投资策略报告:复苏在春季,需求的非线性增长曙光初现.pdf
- 公用环保2024年投资策略报告:电改持续推进,火电盈利稳定性有望进一步提升.pdf
- 房地产2024年投资策略报告:聚焦三大工程,静待需求修复.pdf
- 保险2024年投资策略报告:资产负债匹配穿越利率周期.pdf
- 政策研究2024年宏观政策与经济形势展望:共识与分歧.pdf
- 有色金属行业2024年投资策略报告:新旧需求共振&工业原料受限,构筑有色大海星辰.pdf
文档评论(0)