当前位置:文档之家› 串行通讯波特率和定时器的关系

串行通讯波特率和定时器的关系

串行通讯波特率和定时器的关系
波特率代表数据的传输速率,即每秒钟传送的二进制位数,单位为位/秒。

若波特率为1200,则代表每秒钟有1200个二进制位在数据线上传输,换句话说,即每个二进制位信号电平在数据线上保持的时间为11200s。

这样,就将定时器和波特率联系起来了。

51单片机中串行通讯对应着3种波特率:
1. 对于方式0,波特率是固定的,为单片机时钟的十二分之一,即:
osc /12f ; 2. 对于方式2,波特率有两种可供选择,即
/32osc f 和/64osc f ,对应于以下公式: osc 2/64SMOD f =⨯波特率
SMOD 为PCON 寄存器中的控制位(最高位),其取值为0或者1。

1. 对于方式1和方式3,波特率均为可变的,由定时器T 的溢出速率来决定。

设:
osc ::and::::V T 12f f B 1T T V
X n =
定时器的溢出速率;
系统晶振频率,则
位定时器内部加1计数器加1需要的时间;波特率;
定时器溢出需要的时间,为定时器计数初值。

对于定时器方式0,取值为13;对于定时器方式1,取值位16;
对于定时器方式2和3,取值为8。

and 32and (2/32)2SMOD SMOD B B V V ⨯⎛⎫=⨯= ⎪⎝
⎭即: ()()osc ×2122n n f 12V T =X f X ⎛⎫=- ⎪⨯-⎝⎭
即: 2×n f
X 12V =-
联立得:
2132and 32and 2SMOD SMOD B T T B ⎛⎫==⨯ ⎪⨯⎝⎭即:
从上式可见,每个二进制位电平信号在数据线上保持的时间为定时器溢出需要的时间乘

32
2SMOD,对于
32
2SMOD可做以下理解:
通过定时器产生一个周期为T的脉冲信号,该信号经过分频电路后得到的脉冲信号作
为移位寄存器的脉冲信号。


32
2SMOD即可理解为这一分频电路。

相关主题