- 1、本文档共4页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
用插值调整法设计单片机串行口波特率.doc
用插值调整法设计单片机串行口波特率|第1
内容加载中... 摘要:传统方法设计单片机串行口波特率时,往往要使用特殊频率的晶振。本文在分析MCS-51单片机串行口工作原理的基础上,提出基于12MHz晶振的单片机系统,通过编程实现所需波特率的插值调整设计方法。 引言单片机在当今的仪表及工业测控设备上应用相当广泛,在构成分布式系统进行较长距离数据通信或是要求用有限的硬件资源进行数据交换时,都要用到串行口。也正是串行口使得MCS-51单片机增色不少,成为单片机开发应用中不可缺少的部分。1 MCS-51单片机串行口工作原理MCS-51单片机串行口采用异步通信方式。异步通信方式是以字为单位来传送数据的。每一个字由起始位、数字位、奇偶检验位、停止位等构成,称为一帧,如图1所示。在帧格式中,一个字由起始位开始,至停止位结束。起始位为0,用来通知接收端一个新的字开始到来,同时,起始位还被用作接收端的同步时钟,以保证后面的接收能正确进行。起始位后是5~8位数据,接着是奇偶校验位(可省略),最后是停止位。停止位为1。
500)this.style.ouseg(this)
下面以单片机串行口工作方式3为例说明其工作原理。串口在发送时,内部有一个16(当SMOD=1时)分频计数器,用于计算T1的溢出。当16分频计数器每次满度翻转时(由全1变全0)的那个机器周期,即把1位写入“SBUF”中的数据送到TXD口上。图2为接收时序图。在接收时,接收器在每一个接收时钟的上升沿(T1的溢出信号)采样接收数据线RXD。当发现出现负跳变时,16分频计数器就立刻复位,以使计数器满度翻转的刻度恰好与输入位的边沿对准。在以后的接收里,16分频计数器计算T1的溢出,每满度翻转1次就接收1位数据。在计数器第7、8、9状态时,所对应的T1溢出作为位检测采样控制脉冲。每个脉冲控制位检测器对RXD端口采样1次,这3个脉冲理论上对应于每一位的中央段,采样的结果按三中取二法确定RXD的值,以抑制干扰。如果所接收的第一位不是0,说明不是一帧数据的起始位,该位被摒弃,接收电路复位,等待下一个负跳变。参看串口接收脉冲时序图,若所接收的数据与接收终端自身的波特率设置有差异,即在接收起始位时,由于起始位的同步作用,7、8、9三个位采样检测脉冲处在该数据位的中断。随着接收的进行,检测采样脉冲将逐步偏离接收数据的中央,在接收停止位时偏移达到最大值。但由于下一帧起始接收停止位时偏移达到最大值。但由于一帧起始位的同步作用,致使前面累积的误差对以后的接收不影响。因此只要这种偏移在允许范围内就不至于发生错位或漏码。由分析可知,当检测时钟脉冲对于接收数据的累积误差达50%,则采样的最后一位数据已处于检测时钟有效与无效的临界状态,这时就可能出错。考虑到器件的离散性,累积误差不应大于标准值的25%。因此,对于常用的9位和11位一帧的串行传输,通常规定其最大的波特率允许误差分别为2.8%和2.3%。
500)this.style.ouseg(this)
2 波特率传统设计方法MCS-51单片机串行口波特率的传统设计,通常是把定时器T1置于工作方式2(8位自动重装定时初值方式)。这样,只要给T1装入初值,启动T1便会产生相应的溢出,串行口工作方式1、3的波特率计算公式为500)this.style.ouseg(this)整理后,得到定时器T1在相应波特率时的初装值:500)this.style.ouseg(this)式中:SMOD-波特率倍增位;fosc-振荡频率;X-定时器初值若用户板采用的是常用的12 MHz晶振,即有许多常见的波特率由式(2)算得X值非整数。此,常见的参考资料会使用特定的晶振来获取所需的波特率。其实,由前面分析可知,数据传输以帧为单位,每帧开关的起始位同时具有同步时钟的作用。因此,只要在每帧内的误差足够小就可以了,追求过高的精度并无多大的意义。表1给出了几种采用12 MHz晶振得到的常用波特率及其误差值。
表1 采用12MHz晶振产生的常用波特率波特率/Bs-1fosc/MHzSMOD定时器T1误差/%C/T方式重装初值方式1、3:62500
4800
2400
1200
137.512
12
12
12
121
1
1
1
00
0
0
0
02
2
2
2
2FFH
F3H
E6H
CCH
1DH
0.16
0.16
0.16
0.123 插值调整法设计波特率的方法由以上看出,在采用12 MHz晶振的前提下,尚有9600b/s、19 200b/s等常用波特率,采用式(2)所得的结果误差过大而不能实现。当然,一般情况下通过换用晶振来获取所需的波特率是无可非议的,但遇到诸如:(1)所开发的系统要求能随时方便地切换波特率;(2)对单片机用户板成品进行更改串口波特率
您可能关注的文档
- 物流储存AGV转向识别体系研究.doc
- 物流单位物流金融创新模型及风险管理分析.doc
- 物流单位精益物流管理探微.doc
- 物流外包关系对物流效率影响概述.doc
- 物流工程毕业论文《物流工程与现代包装》Logistics engineering and modern packagin.doc
- 物流工程监理论文范文.doc
- 物流工程研究论文.doc
- 物流工程职称论文.doc
- 物流工程职称论文评定范文:《物流工程投资中净现值方法探究》Logistics engineering investmen.doc
- 物流工程论文《系统仿真物流软件如何应用于物流工程领域》.doc
- 2025年中山市沙溪镇人民政府所属事业单位招聘11人笔试备考题库及参考答案详解一套.docx
- 2025年中山市横栏镇人民政府所属事业单位第二期招聘笔试高频难、易错点备考题库及参考答案详解一套.docx
- 2025年中山市横栏镇人民政府所属事业单位第二期招聘笔试高频难、易错点备考题库含答案详解.docx
- 2025年中山市阜沙镇人民政府所属事业单位招聘笔试高频难、易错点备考题库及完整答案详解1套.docx
- 2025年中山市阜沙镇人民政府所属事业单位招聘笔试高频难、易错点备考题库参考答案详解.docx
- 2025年中山市阜沙镇人民政府所属事业单位招聘笔试备考题库附答案详解.docx
- 2025年中山市阜沙镇人民政府所属事业单位招聘笔试高频难、易错点备考题库附答案详解.docx
- 2025年中山市阜沙镇人民政府所属事业单位招聘笔试备考题库附答案详解.docx
- 2025年中山市阜沙镇人民政府所属事业单位招聘笔试备考题库及答案详解一套.docx
- 2025年中山市阜沙镇人民政府所属事业单位招聘笔试备考题库及完整答案详解1套.docx
文档评论(0)