- 1、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
UART数据通信(发送模块部分)
UART数据通信
摘要:UART协议是数据通信及控制系统中广泛使用的一种全双工串行数据传输协议,在实际工业生产中有时并不使用 UART的全部功能,只需将其核心功能集成即可。波特率发生器、接收器和发送器是UART的三个核心功能模块,本课程设计分成三部分,本人负责UART接受模块的设计和仿真,其余部分由另两位同学完成。本文使用Verilog语言对发送功能模块进行描述并加以整合,并利用Xilinx ISE 软件进行仿真,其结果完全符合UART协议的要求。
UART 数据通信协议的介绍
UART(即?Universal?Asynchronous?Receiver?Transmitter通用异步收发器)是广泛使用的串行数据传输协议。UART允许在串行链路上进行全双工的通信。UART 通信接口简单,只需要两根线(本文只讨论两根线的情况,不涉及状态控制等信号) : tx 是UART 数据发送信号, rx 是UART 数据接收信号。
由于没有时钟信号作为采样信号,因此在UART 的串行数据中需要增加一些额外的信息,这些信息连同数据组成UART 的数据帧格式。UART 的数据帧格式是:起始位(值为0) 、数据位(可根据需要设置成6 ,......, 9 或其他位数,数据位是低位在先、高位在后)、奇偶校验位(可根据需要设置成奇校验、偶校验或无校验,本章介绍的是无校验)、停止位(停止位可有1 ,......, 2 位)0。UART 的具体数据帧格式如下图所示。
UART 数据帧格式
起始位的意义是提醒接收方数据即将到来,请做好接收数据的准备。
数据位是接收方需要接收的数据信息。
奇偶校验位的意义是给接收方提供一种校验数据正确与否的方法和信息。这需要双方事先约定好是奇校验还是偶校验或者无校验。
停止位是提醒接收方数据已发送完毕,如果接收方按照UART 协议没有正常接收到停止位,则说明该帧数据不完整,可以判定数据无效。
UART 数据发送模块建模
根据UART 数据通信协议, UART 数据发送模块还是比较简单的。实现过程描述如下:在空闲状态接收发送数据的指令后,在装载数据的同时,在数据的低位加上1 位的开始位0 ,在数据的高位加上1 位的停止位1 ,接着在时钟的节拍下把这10 位数据从低位到高位发送出去,最后恢复UART 数据发送模块为空闲状态。根据以上描述设计流程图,如下图所示。
UART 数据发送流程图
UART 数据接受模块
UART 数据接收模块相对UART 数据发送模块来说更复杂些。下面简单的介绍一下UART 数据接收的时序分析。因为UART是异步通信,在数据采样上没有同步时钟作为参考点。结合UART 数据通信协议,UART 首先需要捕获数据线上的起始信号,在起始位后连续接收8 位数据,最后判断停止位是否有效,如果有效则表示一帧UART 数据完整接收,否则表示UART 数据帧出错(这里不考虑奇偶校验位)。由于没有传送时钟信号,所以接收方需要知道发送方发出数据的波特率。虽然知道了发送方的波特率,但由于接收方与发送方可能是两个不同的时钟源,所以时钟频率存在偏差。为了解决不同时钟的偏差,UART在接收方对采样时钟做出规定,即采样时钟是数据波特率的16 倍。
上面讲到接收方接收一个数据需要采样16 次,这16 次是这样分配的:当捕获到数据线上的下降沿时开始计数,计数到第8 个采样周期时的采样数据作为接收到的数据。当计数到第16 个采样周期时,计数器归零重新计数。每计数到8 时进行数据采样。这样,只要发送方与接收方的时钟信号的频率不超过1 / 16 ,就可以正确采样数据了。
UART分频器
假设数据的波特率为p,则所需时钟的频率为16*p。以波特率p为9600为例,系统时钟为50MHz,则分频系数(16*9600) = 325.52,取整为326。分频器Verilog HDL语言代码如下:
module clkdiv(clk, clkout);
input clk; //系统时钟
output clkout; //采样时钟输出
reg clkout;
reg [15:0] cnt;
always @(posedge clk) //分频进程
begin
if(cnt == 16d162)
begin
clkout = 1b1;
cnt = cnt + 16d1;
end
else if(cnt == 16d325)
begin
clkout = 1b0;
cnt = 16d0;
end
else
begin
cnt = cnt + 16d1;
end
end
Endmodule
UART 数据发送模块仿真
下面使用Xilinx ISE Design
您可能关注的文档
- 看图说话-小兔子找太阳.ppt
- 看图猜电影.ppt
- 化学反应进行的方向-课时作业.doc
- HYZ4(ZYHS240)正压氧气呼吸器课件.ppt
- 看图讲述故事《小猫生病了》.ppt
- H银行答辩PPT.ppt
- 看图说话1(低年级).ppt
- 化学品安全技术说明书,溴.doc
- TS质量手册.doc
- HZS120混凝土搅拌站安装方案.doc
- 关于请求易地扶贫搬迁的申请大全.docx
- 国防安全演讲稿.docx
- 教科版二年级上册科学全册新质教学课件(配2025年秋改版教材).pptx
- 部编人教版二年级上册道德与法治全册新质教学课件(配2025年秋改版教材).pptx
- 2023年三亚市公务员考试行测真题及参考答案详解一套.docx
- 中关村实验室清华大学国防科大2025网络空间测绘技术白皮书139页.pdf
- 汽车电子行业系列报告之激光雷达篇激光雷达星辰大海国产供应链初长成-22011129页.pdf
- 非公路轮胎行业深度报告OTR轮胎需求盈利双高轮胎蓝海市场-23031718页.pdf
- 电子行业深度报告自动驾驶加速驶来车载激光雷达开启百亿蓝海市场-22011734页.pdf
- 电子行业佰维存储股份有限公司投资价值研究报告专注存储蓝海一体化解决方案龙头-22121292页.pdf
最近下载
- 2025年自动驾驶卡车在物流行业中的自动驾驶技术产业链整合与商业化路径报告.docx
- 20240208-广发证券-传媒行业小红书深度报告之二:“买手电商”根植社区生态,原生商业系统成长可期.pdf VIP
- 小学二年级数学上册-每课练习.doc VIP
- 物理学咬文嚼字之六十六:参照系?坐标系!.pdf VIP
- 《船舶内装工程》课件 .ppt VIP
- 2023年崔允漷新课程下的大单元教学专题讲座课件 .docx VIP
- IMS-腾讯医疗咨询产品用户研究-201710.pdf VIP
- 物理学咬文嚼字之三十一: 核-心.pdf VIP
- 一种双目相机的镜头遮挡联合检测方法及系统.pdf VIP
- 物理学咬文嚼字之三十九:Secular equation.pdf VIP
文档评论(0)