- 1、本文档共4页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
EUART高级运用基于原理性
1.UART原理
.1 UART的通信原理
UART5~8位数据位组成。数据位后面是奇偶校验位,最后是停止位,停止位是用高电平来标记一个字符的结束,并为下一个字符的传输做准备。停止位后面是不同长度的空闲位。停止位和空闲位都规定为高电平,这样可以保证起始位有一个下降沿。UART的帧格式如图2.1所示。
图2.1 UART的帧格式
UART的帧格式包括线路空闲状态(idle,)(start?bit,)、5~8位数据位(data?bits)、校验位(parity?bit,)和停止位(stop?bit,1、1.5、2位)。?
在串口的异步通信中,数据以字节为单位的字节帧进行传送。发送端和接收端必须按照相同的字节帧格式和波特率进行通信。其中字节帧格式规定了起始位、数据位、寄偶效验位、停止位。起始位是字节帧的开始。使数据线处于逻辑0状态 ,用于向接收端表明开始发送数据帧,起到使发送和接收设备实现同步。停止位是字节帧的终止,使数据线处于逻辑1状态。用于向接收端表明数据帧发送完毕。波特率采用标准速度9600bit/s。
UART内部一般有配置寄存器,可以配置数据位数(5~8位)、是否有校验位和校验的类型、停止位的位数(1,1.5,2)等设置将发送器和接收器模块组装起来,就能较容易地实现通用异步收发器总模块,而且硬件实现不需要很多资源,尤其能较灵活地嵌入到FPGA/CPLD的开发中。
1.2 UART的结构
UART的设计采用模块化的设计思想,主要分为 3个模块:数据发送模块、数据接收模块及波特率发生器控制模块。发送模块实现数据由并行输入到串行输出,接收模块实现数据由串行输入到并行输出,波特率发生器模块控制产生UART时钟频率。
UART主要有由数据总线接口、控制逻辑、波特率发生器、发送部分和接收部分组成且控制逻辑一般是由MP即微处理器模块实现,图中的对象器件一般指和CPU进行通信的外围串行通信设备类打印机等。
连线采用最简单的3线制连接模式,即只需要两根信号线和一根地线来完成数据收发。而FPGA 只需要选择两个普通I/O引脚分别与接口芯片MAX3232对应引脚T2IN、R2OUT相连即可完成将串口电平转换为设备电路板的工作电平,即实现RS-232电平和TTL/ CMOS 电平的转换。一个MAX3232芯片可以支持两个串口的电平变换,我们选择其中的一组接口,图中的4个电阻可以省去。在电路中加入了0Ω的跳线电阻,是为了在这组接口出故障时可以方便地跳线,使用另一组接口。
UART模块设计
.1 接收模块
.1.1 接收模块的实现方法
rdn input 控制是否将接收缓冲器(rbr)中的数据由CPU读取(在本程序中表现的是由dout输出),当rdn为0可以 dout output 接收模块并行输出 Dataready output 接收模块数据接收完毕标志 framing_error output 奇偶出错标志 parity_error output 奇偶校验出错标志 rxd input 接收模块串行输入
- 2 -
- 1 -
- 2 -
- 1 -
1
0/1
0/1
0/1
0/1
0/1
0/1
0/1
0/1
LSB
MSB
起始位
数 据 位
停止位
校验位
空闲位
CPU
总线接口
发送部分
接收部分
波特率
对象
器件
接收
文档评论(0)