串口波特率的计算

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

8051的串口波特率的计算

西南科技大学电子测试实验室通信08级李晓文整理1、方式0的波特率,固定为晶振频率的十二分之一。

2、方式2的波特率,取决于PCON寄存器的SMOD位。

PCON是一个特殊的寄存器,除了最高位SMOD 外,其他位都是虚设的。

计算方法如下:

SMOD=0时,波特率为晶振频率的1/64;

SMOD=1时,为晶振频率的1/32.

3、方式1与方式3的波特率,都由定时器的溢出率决定。公式为:

波特率= (2SMOD/ 32)×(定时器T1的溢出率)

通常情况下,我们使用定时器的工作方式2,即比率发生器,自动重载计数常数。

溢出的周期为:

T=(256-X)×12/fosc

溢出率为溢出周期的倒数,所以:

如此,也可由波特率反推出计数器的初始值。下面是常用的波特率及初始值:

51单片机模拟串口波特率计算方法

1.计算波特率位间隔时间(即定时时间,其实就是波特率的倒数)

位间隔时间(us) = 106 (us) / 波特率(bps)

2.计算单片机指令周期:

指令周期(us) = 12 / 晶振频率(Mhz)

3.计算定时器初值:

需要指令周期个数 = 位间隔时间(us) / 指令周期(us)

定时器初值 = 2n—需要指令周期个数

n为定时器位数。

相关文档
最新文档