1 / 6
文档名称:

MC9S12XDP512串口使用笔记(中断方式).doc

格式:doc   大小:78KB   页数:6页
下载后只包含 1 个 DOC 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

MC9S12XDP512串口使用笔记(中断方式).doc

上传人:ttteee8 2022/6/23 文件大小:78 KB

下载得到文件列表

MC9S12XDP512串口使用笔记(中断方式).doc

相关文档

文档介绍

文档介绍:相关寄存器:
SCIBDH,SCIBDL:波特率寄存器(SCIBDH只有低5位有效)
波特率=总线频率/ (16 * SBR[12:0])
SCICR2: SCI控制寄存器2
位数
7
6
5
4
3
2
1
0
ate = 153600,即 9600bytes/s 使能接收中断(实际:156250bps)
// ================================================================= ===========
void SCI_Init(void)
|7. {
// SCI1
SCI1BDH = 0X00; // baud rate = bus clock / (16*SBR[12:0]) 波
特率 153600, SBR[12:0]= 16 = 0X0F;
SCI1BDL = 0X0F;
SCI1CR2 = 0x2C; //接收使能,接收器满中断使能,发送使能
}
// =================================================================
//发送数据请求函数
//如果没有数据正在发送,则立即发送,如果有数据正在发送,则置位发送请求标志 位
//主流程不断查询发送请求标志位,若有该标志位,且没有数据正在发送则发送
// =================================================================
void Send(byte commd)
{
SCI_Commd=commd;
if (Status. Bits .Uart_R_Over==0) // 发送完成
{
Send_l();
}
else
{
Status. =l; // 置位发送请求标志
}
}
// =================================================================
//发送函数
// Pre_Send():发送预处理函数,根据通信头(commd)内容处理发送缓冲区
33 .// ================================================================= ===========void Send_l(void)
{
Pre_Send();
= 1; // 置位正在发送标志
SCI1CR2 |= 0x40; // 使能中断
}// ================================================================
//串口中断程序
//中断接收和中断发送
// =================================================================
void SCI1_INT(void)
43. {
44.
static byte R_num = 0,
R_curr = 0;
//