OpenEdv-开源电子网

 找回密码
 立即注册
正点原子全套STM32/Linux/FPGA开发资料,上千讲STM32视频教程免费下载...
查看: 6613|回复: 0

Xilinx FPGA入门连载66:基于UART收发的RTC读写

[复制链接]

431

主题

438

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
1866
金钱
1866
注册时间
2014-7-19
在线时间
50 小时
发表于 2016-4-6 10:35:13 | 显示全部楼层 |阅读模式
Xilinx FPGA入门连载66:基于UART收发的RTC读写
特权同学,版权所有
配套例程和更多资料下载链接:
1.jpg
1 功能简介
         如图所示,本实例通过IIC接口定时读取RTC中的时、分、秒寄存器,同时将时、分、秒数据通过UART发送到PC上的串口调试助手进行实时的显示;此外,PC上的串口调试助手也可以发送“0xaa+time+minute+second+0x55”这样的16进制字符串来重设RTC寄存器,重设后立即生效。
2.jpg
2 模块划分
         本实例模块划分如图所示。
3.jpg
●  Iic_controller.v模块产生IIC读写的时序。
●  Rtc_controller.v模块产生RTC寄存器的读写控制,将读写信号连接到iic_controller.v模块实现底层的读写。
●  Rtc_top.v模块衔接iic_controller.v模块和rtc_controller.v模块。
●  Speed_tx.v模块产生串口波特率的分频以及相关控制信号。
●  My_uart_tx.v模块产生发送到PC的UART数据协议,即并串转换处理。
●  Tx_bridge.v模块判断当前的RTC读出秒数据是否有变化,若发送变化则产生一个发送到PC的字符串。
●  My_uart_rx.v模块接收来自PC端的UART数据,即串并转换处理。
●  Rx_bridge.v模块对当前接收到的UART串口帧数据解码,产生需要写入到RTC的时、分、秒数据。
3 板级调试
连接好下载线,给SP6开发板供电(供电的同时也连接好了UART)。
打开ISE,进入iMPACT下载界面,将本实例工程下的sp6.bit文件烧录到FPGA中在线运行。
双击如图所示的“串口调试器”,
4.jpg
         如图所示,打开串口调试器后,选择串口为COM10(我们前面在硬件管理器中新识别到的COM口,实验者应以自己电脑识别到的COM口为准),设置波特率为9600,数据位为8,校验位为None,停止位为1。点击“打开串口”。 注意“接收字符”下面的“十六进制”不要勾选。
5.jpg
         如图所示,当我们点击完“打开串口”,其显示字符就变成了“关闭串口”。
         此时我们看到“接收字符”下面不断有时间地址的一串时、分、秒信息打印出来。这组不断更新的数据就是我们从RTC芯片中读取的时间信息。
6.jpg
         本实例增加了RTC重置功能,如图所示,当我们以16进制格式发送字符串“aa 09 58 30 55”后,“接收字符”显示就更新到当前最新的“09:58:30”的时间开始递增了。
7.jpg

正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则



关闭

原子哥极力推荐上一条 /2 下一条

正点原子公众号

QQ|手机版|OpenEdv-开源电子网 ( 粤ICP备12000418号-1 )

GMT+8, 2024-6-29 00:13

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

快速回复 返回顶部 返回列表