单片机学习小组
直播中

张玉华

7年用户 165经验值
私信 关注

STC12C5A60S2串口通讯发出收据后能接收到数据但是数据不正确是怎么回事?

根据数据手册写的一个串口(P3.0 P3.1)模式1收发程序,发出收据后能接收到数据但是数据不正确,求大神解答。
#include
void config(unsigned int temporary)
{
        BRT = 256 - 1000000/(32*temporary);//12M晶振
        AUXR = 0x11;
}
void main()
{
        IE = 0x90;
        SCON = 0x50;
        config(9600);
        while(1);
}
void UARtinterrupt() interrupt 4
{
        if(TI == 1)
        {
         TI = 0;
        }
        if(RI == 1)
        {
         RI = 0;
         SBUF = SBUF + 1;
        }
}

回帖(5)

徐铭潞

2019-10-15 08:15:21
  SBUF = SBUF +1;
为什么要加1?是不是你要得到你接收到的数据加1? 最主要的是你的波特率是不是对!
举报

余少华

2019-10-15 08:32:06
这个是根据数据手册写得
举报

刘翔宇

2019-10-15 08:43:58
BRT = 256 - 1000000/(32*temporary);//12M晶振
怎么感觉这是10M晶振
举报

吴娜

2019-10-15 09:02:27
请问BTR值是如何算出来的
举报

更多回帖

发帖
×
20
完善资料,
赚取积分