需要确认注册邮箱后才能开通博客,立即确认我的邮箱
文章 搜索 高级搜索 ?3? ?3?
  • 滤波器new!
  • LED驱动 new!
  • 新能源 new!
  • PLL
  • PCIE协议
  • 可穿戴
  • LSI
  • FCI
文章 论坛 博客 小组 研讨会
EDN电子技术论坛>博客 >特权同学博客 >Xilinx FPGA入门连载42:UART loopback测试

特权同学的博客——特权's Blog——永远忠于年轻时的梦想!

博主:特权同学???? ???? ????
介绍: 在实践中学习,在实践中思考,在实践中总结,在实践中提高;也许,在特权同学的原创博文中会有一些不成熟的思考和文字,也非常期待各路好手分享自己的看法和见解,特权在此先谢过了!~_~
你们必认识真理,真理必叫你们得以自由。And you shall know the truth, and the truth shall set you free. ----John 8:32

文章(613)???? 访问(2447061)???? 评论(1981)???? 投票(834)???? 订阅本博??

博文列表查看方式: ???

Xilinx FPGA入门连载42:UART loopback测试
发布时间:2016-01-04 08:29:10
技术类别:CPLD/FPGA ??? 个人分类:FPGA入门
需要确认注册邮箱后才能下载,立即确认我的邮箱

Xilinx FPGA入门连载42:UART loopback测试

特权同学,版权所有

配套例程和更多资料下载链接:

http://pan.baidu.com/s/1jGjAhEm

?

1 功能概述

???????? UARTUniversal Asynchronous Receiver/Transmitter),即通用异步收发,它的数据传输不需要时钟,只要两条信号线分别进行数据收发。既然没有时钟,那么他们是如何保证数据收发的准确性的?很简单,收发双方首先需要做到知己知彼,约定好数据传输的速率(简单的讲就是约定好一个数据位传输的时间)和帧格式(即一帧的长短,一帧由哪些位组成,他们的功能都是什么)。

???????? 我们看看UART的一个帧定义。简单的串口帧格式如图所示,它由1个起始位(必须为0)、8个数据位(用户数据)、1个奇偶校验位(用于简单的纠错以保证传输可靠性)和12个停止位(必须为1)组成。除了奇偶校验位,其他三个部分都是必须的。当信号线空闲时,必须为高电平。要发起数据传输时,1个低电平的脉冲表示起始位,然后连续传输8个数据位和若干个高电平的停止位,这样便完成一次传输。

?

该实验要实现的功能是FPGA实时监测uart_rx信号是否有数据,若接收到数据,则把接收到的数据通过uart_tx发回给对方。PC机使用一个串口调试助手进行通信。

在代码设计中,speed_setting.v模块里可以修改收发数据的波特率,如9600bps19200bps38400bps57600bps115200bps等。发送的数据帧格式为:1bit起始位,8bit数据,无校验位,1bit停止位。

???????? 该实例的内部功能如图所示。

?

2 模块划分

???????? 该工程实例的设计模块层次如图所示。

my_uart_rx.v模块主要是完成数据的接收,speed_setting.vspeed_rx)模块主要响应my_uart_rx.v模块发出的使能信号进行波特率控制,并且回送一个数据采样使能信号。my_uart_tx.v模块在my_uart_rx.v模块接收好一个完整的数据帧后启动运行,将接收到的数据作为发送数据返回给PC端,它的波特率控制是由speed_setting.vspeed_tx)模块产生。

?

3 板级调试

连接好下载线,给SP6开发板供电(供电的同时也连接好了UART)。

打开ISE,进入iMPACT下载界面,将本实例工程下的sp6.bit文件烧录到FPGA中在线运行。

双击如图所示的 “串口调试器”,。

???????? 如图6.109所示,打开串口调试器后,选择串口为COM10(我们前面在硬件管理器中新识别到的COM口,实验者应以自己电脑识别到的COM口为准),设置波特率为9600,数据位为8,校验位为None,停止位为1。点击“打开串口”。

???????? 如图所示,当我们点击完“打开串口”,其显示字符就变成了“关闭串口”;输入需要发送的数据“55aa”,然后勾选上“自动发送”,我们就可以看到接收字符下面的空白区域每隔一会就打印一组我们发送的字符串。这说明我们的实验成功了。大家可以更改代码中的波特率再进行测试,也可以将返回的数据做一些更改,如将接收的数据取反后返回,最后在串口调试助手上再做些调试,看看是否达到预定的功能。

?

?

?

?

分享到:? 新浪微博 ?? 微信 ??


打开微信“扫一扫”,打开网页后点击屏幕右上角分享按钮

1.扫描左侧二维码
2.点击右上角的分享按钮
3.选择分享给朋友
qq空间 ?? 腾讯微博 ?? 人人网 ?? 百度搜藏 ??
??????有[ 0 ]名读者喜欢此文
阅读(1485)?? 评论(1)?? 收藏??I?? 打印??I?? 推荐到小组??I?? 转发到我的博客 (0)
对不起,您还没有登录,请先登录注册
上一篇:【博客大赛】Xilinx FPGA入门连载43:FPGA 片内ROM实例之功能概...

下一篇:Xilinx FPGA入门连载41:FT232串口芯片驱动安装

最近到访博主
九章子 HJobe
牛人有话说 - Xilinx FPGA入门连载42:UART loopback测试
美国的游客 (您将以游客身份发表,请登录 | ?注册)
?
你还可以输入1000
验证码:
分享: 新浪微博?? qq空间?? qq微博?? 人人网?? 百度搜藏??
?
有 [ 1 ] 名读者发表评论 - Xilinx FPGA入门连载42:UART loopback测试

陕西省的游客

有代码不?

(0) ???? (0) ???? 回复(0)
对不起,您还没有登录,请先登录注册
???? 2016-06-17 15:48
转发到我的博客
评论?@特权's Blog——永远忠于年轻时的梦想!?的“Xilinx FPGA入门连载42:UART loopback测试”
XilinxFPGA入门连载42:UARTloopback测试特权同学,版权所有配套例程和更多资料下载链接:http://pan.baidu.com/s/1jGjAhEm1功能概述UART(UniversalAsynchronousReceiver/Transmitter),即通用异步收发,它的数据...
你还可以输入30000
同时评论给?特权同学
????
快速回复
?
你还可以输入1000
????
引用回复
引用评论?
?
你还可以输入1000
????
博主资料

在成功的时候我学习谦虚
在失败的时候我学习坚毅
在快乐的时候我学习节制
在痛苦的时候我学习忍耐
在愤怒的时候我学习冷静
在害怕的时候我学习勇敢
在焦虑的时候我学习乐观
在迷惑的时候我学习分析
在犹豫的时候我学习

个人文章分类
文章存档
2016年06月 (9) 2016年05月 (2)
2016年04月 (7) 2016年03月 (10)
2016年02月 (2) 2016年01月 (12)
最新评论
阅读排行
特权同学的小组???? 加入小组
EDN助学—FPGA/CPLD学习小组
成员18962名
创建者:特权同学 《FPGA快速系统原型设计权威指南》书友会 成员471名
创建者:EDNChina 《FPGA/CPLD边练边学》书友会 成员269名
创建者:胖螃蟹 成员1698名
创建者:特权同学 《基于FPGA的快速系统原型开发》翻译 成员1037名
创建者:特权同学 Numonyx存储小组 成员427名
创建者:younglew 工程师读《圣经》 成员162名
创建者:特权同学 USB专区 成员11372名
创建者:computer00 EDN助学—CAN学习小组与书友会 成员4533名
创建者:PIAE FPGA讨论组 成员3308名
创建者:stephen100 EDN帮助小组 成员405名
创建者:彩云 振南的znFAT 单片机上的FAT32文件系统 成员714名
创建者:znmcu EDN助学小组之51单片机 成员4860名
创建者:wang1jin 图像视频讨论区 成员140名
创建者:stephen100 电子制作交流区 成员4841名
创建者:xieweichao 深入浅出玩转FPGA之学习小组 成员937名
创建者:majianbiao ModelSim 成员363名
创建者:riple 《匠人手记》书友会 成员900名
创建者:程序匠人 《感悟设计》书友会 成员356名
创建者:梦红尘 EDN助学---TCP学习小组 成员793名
创建者:彩云 《华为研发》书友会 成员270名
创建者:张利华 SD/MMC DESIGN 成员583名
创建者:zjw5000 博客精华 成员59名
创建者:Colinzhang 点评EDN文章 成员24名
创建者:jean 抗震救灾,爱心捐助小组 成员88名
创建者:彩云
展开
最新网络博文
华为官方回应有关自研手机操作系统的传闻
这颗芯片有故事,你有酒吗?
PCB设计PADS各层的用途和作用
联想收购的得与失 摩托罗拉空壳化使...
传华为智能机销量目标下调2000万部 Ma...
? 更多博文>>
返回博客首页
有问题请反馈