(求助)关于波特率减半的问题,请大侠解惑

2019-07-15 17:53发布

最近刚开始入门,照猫画虎,从网上东拼西凑搞了各1302的遥控时钟,通过串口进行调试。根据代码示例,波特率为9600,定时器为20ms。
可我实际测试时,波特率变为4800,1秒钟的定时器变成了2秒钟。搞了几天也没找到原因。烦请各位大侠指点一下。
相关波特率及定时器初始化代码如下:
           TMOD=0x21;
        TL1=0xfd; // 采用11.0592MHz的晶振,波特率9600bps
        TH1=0xfd;
        SCON=0x50;
        PCON=0x00;
        TR1=1;
                 ES = 1;
        ET0=1;
        TR0=1;
        EX0=1;
        IT0=1;
void timer0() interrupt 1  //20ms中断1次,中断50次为1秒
{
        TH0 = 0xb8;
                 TL0 = 0x00;
        TIME20MS++;
        if(TIME20MS==50)
        {
                TIME20MS=0; //1秒钟定时器
        }
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
2条回答
fallstar2008
1楼-- · 2019-07-15 18:48
补充一下,用的stc11f04e单片机,看手册里提到定时器默认是兼容51的12T模式,不知道跟这个有没有关系。
fallstar2008
2楼-- · 2019-07-15 23:14
没有遇到这种情况的么?

一周热门 更多>