你的浏览器版本过低,可能导致网站不能正常访问!为了你能正常使用网站功能,请使用这些浏览器。
查看全部评分
举报
黑皮男 发表于 2016-12-28 13:00 帮顶一下
五哥1 发表于 2016-12-28 19:17 分享下制作过程吧
第一步,使用Cube配置
首先打开CubeMx,选择STM32F413这款芯片,过程太过简单,略过。。。接下来选择串口的配置,以方便后面打印一些调试信息到串口,上位机可以实时了解运行过程,如下图所示。。
由于Nucleo板的usart3连接的是板载的STLink的虚拟串口,所以按照上图选择,然后配置选择启用RTC时钟
RTC配置基本上只需要上面打个勾就行了,然后来到系统晶体配置
我使用的是LSI和HSI,内部的RC时钟,主频最高,跑100M
然后到具体的串口配置,也非常简单,基本上都是点一点鼠标就能完成。。。
配置好波特率,接着设置一下CubeMX的工程路径等相关参数
然后就可以生成初始化代码了
然后就有了初始化代码的文件夹,我们找到MDK工程的并打开就行了(其它的IDE只有上面倒数第二图的IDE环境出选择不一样,其它的基本都是一样的)
第二步,修改代码
a,串口相关的代码的修改,为了使用printf函数,参考坛子内网友的做法,点我查看,以下是我的代码,使用串口3,一次发送一个字节
就可以使用printf函数来通过串口打印信息。。。
b、RTC程序的修改
RTC的程序参考HAL库里边的例程修改的,需要用到的朋友,可以详细参阅HAL库的官方例程本程序主要用到了两个函数,一个设置时间日期的,一个用于获取时间日期的,设置时间日期的函数如下:
然后while循环中使用以下函数就能实时打印了,有辣么一丢丢的像Linux中的日志打印
另外在while循环前增加一句读RTC寄存器的代码,以判断是否是断电后的第一次使用,第一次使用的时候需要校准,另外可以根据实际使用情况,随时校准RTC(这个校准是软件校时,不是校准RTC的晶振。。。)
然后在while循环前初始化液晶显示模块,
STM32社区是个好地方,好多大神在,交流很方便,小弟才疏学浅,只希望能带给初学者以及有需要的人那么一丢丢的帮助也就心满意足了,不喜勿喷~
谢谢~时间太仓促,准备回老家了
会的,照片啥的现在还没来得及,目前回老家了。。。等回到公司一定补上~