IAP15F2K61S2串口通信很奇怪的问题

2020-01-21 21:46发布

因为竞赛的需要,需要用这款单片机,也下了例程,但发现使用串口通信发回数据到上位机的时候怎样都会出错
然后设置断点观察,就是下面   S2BUF = ch 这个语句有问题!当数值传到变量ch的时候还是对的,一经过这个赋值语句SBUF寄存器里面就变成别的数值了!百思不得其解!换另一个串口寄存器也是一样,难道是这款单片机的SBUF寄存器有问题么?请大神赐教


void uart2_putchar(unsigned char ch)
{
    while (busy);        //等待前面的数据发送完成
    busy = 1;
    S2BUF = ch;                //写数据到UART数据寄存器
        while(!(S2CON & S2TI));
    S2CON &= ~S2TI;         //清除S2TI位       
}
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
2条回答
scofield123
1楼-- · 2020-01-22 00:20
自顶一下。。
zhxzhx
2楼-- · 2020-01-22 01:40
看看波特率,数据位,停止位什么的是不是有问题,另外,sbuf读和写是不一样的,不能用仿真来看。

一周热门 更多>