[求助] 为什么51单片机的串口通讯波特率计算时 分母 中有个2,一直考虑不明白为什么要除以2

一沙一世   2022-8-14 13:37 楼主

为什么51单片机的串口通讯波特率计算时 分母 中有个2,一直考虑不明白为什么要除以2 ,如下图所示,除以16是因为要采样16次,除以个2,到底是什么原因呢,是一个周期要  定时器要产生2个溢出 才可以吗?

 

image.png  

回复评论 (4)

这段文字可没说必须除以2,而是说可以除以2也可以不除以2。难道箭头下面那个计算式都没有看见?

PCON寄存器中有一位,该位控制时钟信号直通或者绕过一个二分频电路。

点赞  2022-8-14 14:27
引用: maychang 发表于 2022-8-14 14:27 这段文字可没说必须除以2,而是说可以除以2也可以不除以2。难道箭头下面那个计算式都没有看见? PCON寄 ...

谢谢,它说的是   PCON的最高位可以把波特率提高一倍,可没有说二分频电路呀?

点赞  2022-8-14 14:36
引用: 一沙一世 发表于 2022-8-14 14:36 谢谢,它说的是   PCON的最高位可以把波特率提高一倍,可没有说二分频电路呀?

上下两个计算式,区别仅在于差个2,由此造成波特率加倍。

它说不说二分频,那是它的事情。

点赞  2022-8-14 14:43

是否除以2,由PCON位决定。默认状态下(MCU上电复位),PCON的值决定了需要除以2。这里的2,不是分频的意思,而是表示是否需要倍频的意思。如果想要波特率加倍,需要对PCON专门处理下。

点赞  2022-8-25 14:18
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 京公网安备 11010802033920号
    写回复