串口波特率设置.doc

串口波特率设置.doc

ID:49864032

大小:76.50 KB

页数:2页

时间:2020-03-05

串口波特率设置.doc_第1页
串口波特率设置.doc_第2页
资源描述:

《串口波特率设置.doc》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、波特率计算在串行通信中,收发双方对发送或接收的数据速率要有一定的约定,我们通过软件对MCS—51串行口编程可约定四种工作方式。其中,方式0和方式2的波特率是固定的,而方式1和方式3的波特率是可变的,由定时器T1的溢出率决定。串行口的四种工作方式对应着三种波特率。由于输人的移位时钟的来源不同,所以,各种方式的波特率计算公式也不同。一、方式0的波特率方式0时,移位时钟脉冲由56(即第6个状态周期,第12个节拍)给出,即每个机器周期产生一个移位时钟,发送或接收一位数据。所以,波特率为振荡频率的十二分之一,并不受PCON寄存器中SMOD的影响,即:方式0的波

2、特率=fosc/12三、方式l和方式3的波特率方式1和方式3的移位时钟脉冲由定时器T1的溢出率决定,故波特宰由定时器T1的溢出率与SMOD值同时决定,即:方式1和方式3的波特率=2SMOD/32·T1溢出率其中,溢出率取决于计数速率和定时器的预置值。计数速率与TMOD寄存器中C/T的状态有关。当C/T=0时,计数速率=fosc/2;当C/T=1时,计数速率取决于外部输入时钟频率。当定时器Tl作波特率发生器使用时,通常选用可自动装入初值模式(工作方式2),在工作方式2中,TLl作为计数用,而自动装入的初值放在THl中,设计数初值为x,则每过“256一x

3、”个机器周期,定时器T1就会产生一次溢出。为了避免因溢出而引起中断,此时应禁止T1中断。这时,溢出周期为:系统晶振频率选为11.0592MHZ就是为了使初值为整数,从而产生精确的波特率。如果串行通信选用很低的波特率,可将定时器Tl置于工作方式0或工作方式1,但在这种情况下,T1溢出时,需用中断服务程序重装初值。中断响应时间和执行指令时间会使波特率产生一定的误差,可用改变初值的办法加以调整。表6—2列出了各种常用的波特率及其初值。SMOD=0时,波特率=fose/32*12(256-X)SOMD=1时,波特率=2*fose/32*12(256-X)X为

4、定时器初值,SMOD是特殊功能寄存器PCON的D7位

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。