[求助]请问大家谁有mcs12dp256这个片的SCI串行通讯收发数据的程序呀.我是初学者请求
- UID
- 522057
- 性别
- 男
|
我用的是mc9s12xdt512,你参考一下吧 /************************************************* 串口0初始化程序
BaudRate0:要设置的串口波特率 *************************************************/ void sci0_init(void) { //SCI0BD=(Clk_Frequece*1000000/BaudRate0/16); // 计算波特率寄存器的值 SCI0BD= 260; // 设置波特率为9600bps,4M晶振,所以总线时钟频率为40M SCI0CR1=0; // 正常8位模式,无奇偶校验 SCI0CR2=0x2c; // 使能接收中断,使能发送、接收 } /************************************************* 串口0发送一个字节程序
SendChar:要发送的数据 *************************************************/ void sci0_send(uchar SendChar) { while(!SCI0SR1_TDRE); // 等待发送缓冲区空 SCI0SR1_TDRE=1; // 写1清标志位 SCI0DRL = SendChar; // 写SCI数据寄存器 } /************************************************* 串口0接收中断程序
*************************************************/ #pragma CODE_SEG NON_BANKED interrupt void SCI0Recive_ISR(void) { SCI0SR1_RDRF=1; // 写1清标志位 SCI0RxData=SCI0DRL; // 读SCI数据寄存器 RxFlag0=1; sci0_send(SCI0RxData); // 将接收到的数据回送 } #pragma CODE_SEG DEFAULT |
|
|
|
|
|