1、概述
我在RT-Thread中挂载了SD卡后,曾在MSH界面中尝试在SD卡中拷贝一个文件,这时候系统提示系统中没有系统时钟,于是我决定在RT-Thread中启动RTC,以完善系统的时钟功能。
2、RT-Thread启用RTC实时时钟
第1步,启动一个可以正常工作的软件工程
点击CubeMX Setting启动STM32CubeMX配置工具。
稍等片刻,CubeMX启动中。
CubeMX启动成功。
第2步,配置实时时钟。
选中实时时钟RTC,激活它的时钟源。
第3步,生成代码。
点击GERNERATE CODE生成代码后,关闭STM32CubeMX配置工具。
第4步,使用RT-Thread Setting配置RTC。
点击RT-Thread Setting启动配置工具。
移动鼠标至某个图标上方,在出现的浮动菜单中,点击configs菜单项,进入下一级配置界面。
在配置界面中找到Using RTC device drivers选项,并启用它,然后点击RT-Thread Studio的左上角的保存配置结果。
第5步,修改board.h文件,启动RTC。
打开drivers->board.h文件,找到RTC配置注释项,打开宏定义启用RTC选项。
启用RTC的宏定义后,保存一下board.h文件。
第6步,编译代码。
编译报错了,看起来少来 一个分号,添加一下,再次编译。
代码编译通过了。
第7步,下载固件到目标板运行。
代码下载成功,并运行至main()函数断点处,点击全速运行代码。
第8步,在MSH中查看RTC设备。
在PC端启动Putty,使用正确的串口号连接至目标板进入MSH界面后,运行命令:
list device
在MSH界面输出的设备列表中,已经可以见到RTC设备。
使用date命令设置时钟或查看时钟了。
至此,在RT-Thread中启动RTC的过程就全部完成了。