特权同学

勇敢的芯伴你玩转Altera FPGA连载98:基于UART收发的RTC读写

0
阅读(1520)

勇敢的芯伴你玩转Altera FPGA连载98:基于UART收发的RTC读写

特权同学,版权所有

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

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

1.jpg

 

 

功能简介

         如图10.43所示,本实例通过IIC接口定时读取RTC中的时、分、秒寄存器,同时将时、分、秒数据通过UART发送到PC上的串口调试助手进行实时的显示;此外,PC上的串口调试助手也可以发送“0xaa+time+minute+second+0x55”这样的16进制字符串来重设RTC寄存器,重设后立即生效。

2.jpg

图10.43 RTC与UART实例功能框图

         本实例模块划分如图10.44所示。

3.jpg

图10.44 RTC与UART实例模块层次

 

板级调试

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

打开Quartus II,进入下载界面,将本实例工程下的cy4.sof文件烧录到FPGA中在线运行。

打开串口调试器后,选择串口为COM10(我们前面在硬件管理器中新识别到的COM口,实验者应以自己电脑识别到的COM口为准),设置波特率为9600,数据位为8,校验位为None,停止位为1。点击“打开串口”。 注意“接收字符”下面的“十六进制”不要勾选。

         如图10.46所示,当我们点击完“打开串口”,其显示字符就变成了“关闭串口”。

         此时我们看到“接收字符”下面不断有时间地址的一串时、分、秒信息打印出来。这组不断更新的数据就是我们从RTC芯片中读取的时间信息。

4.jpg

图10.46 时间信息接收

         本实例增加了RTC重置功能,如图10.47所示,当我们以16进制格式发送字符串“aa 09 58 30 55”后,“接收字符”显示就更新到当前最新的“09:58:30”的时间开始递增了。

5.jpg

图10.47 时间信息更新