STC89C52RC、22.1184M晶振,产生115200波特率。
这问题还纠结了很久,因为在普通情况下算出来的T1时间常数带小数点,这样通常会导致通信结果出错。其实通过电源控制寄存器PCON将波特率倍频下就解决问题了。下面简单给出计算过程:
1、首先T1时间常数X的值为:
X = 2^8 - 2^SMOD * 晶振频率 / (384 * 波特率);
2、电源控制寄存器PCON控制:
PCON D7 D6 D5 D4 D3 D2 D1 D0
位符号 SMOD —————— GF1 GF0 PD IDL