波特率即一秒传送多少位(bit)
串口通信需要设置波特率,方式0跟方式2的波特率是不可变的,方式1跟方式3的波特率可变
方式0的波特率=fosc/12
方式1的波特率=(2^SMOD/32)*(T1溢出率)
方式0的波特率=(2^SMOD/64)*fosc
方式0的波特率=(2^SMOD/32)*(T1溢出率)
其中fosc为晶振的频率,SMOD为PCON寄存器的最高位,决定波特率是否加倍。
而溢出率是指溢出所用时间的倒数,比如12mhz晶振的单片机,定时器从零开始到溢出用时65535us,则溢出率为1/65535 mhz(单片机1个机器周期等于12个时钟周期,所以12mhz晶振的单片机定时器每1us计数一次)