- 20
- 0
- 约7.69千字
- 约 55页
- 2016-11-29 发布于湖北
- 举报
(3)方式1或方式3时,波特率由定时器T1的溢出率与SMOD的值共同决定,即: 波特率=(2SMOD/32)×T1的溢出率 T1作波特率发生器时,通常选用方式2,溢出率取决于计数速率和定时器的初值。 T1方式2下,溢出周期为:(256-X) ×12/fosc 溢出率为溢出周期的倒数。 波特率公式为 波特率=(2SMOD/32) × fosc/ [12 ×(256-X)] 实际使用时,为避免烦杂的初值计算,常用的波特率和初值X间的关系列成表7-2(P148),以供查用。 表7-2有两点需要注意: (1) 时钟振荡频率为12MHz或6MHz时,表中初值X和相应的波特率之间有一定误差。例如,FDH的对应的理论值是10416波特(时钟6MHz)。与9600波特相差816波特,消除误差可以调整时钟振荡频率fosc实现。例如采用的时钟振荡频率为11.0592MHz。 例7-3 若8031单片机的时钟振荡频率为11.0592MHz,选用T1为方式2定时作为波特率发生器,波特率为2400b/s,求初值。 选SMOD=0,X=244=F4H,F4H装入TH1和TL1 这里时钟振荡频率选为11.0592 MHz,就可使初值为整数, 从而产生精确的波特率。 7.4 串行口的编程和应用 7.4.1 串行口方式1应用编程(双机通讯) 例 采用方式1进行双机串行通讯,收发双方均采用6MHz晶振
原创力文档

文档评论(0)