BKP还没有搞完,怎么又换到了RTC上了,因为RTC和BKP有些联系,想不关联还不行呢。
本文引用地址:http://www.eepw.com.cn/article/226866.htm
以下是数据手册上有关RTC的介绍:
单片机小Tips 玩转IAR开发STM32" style="border: none; vertical-align: middle; ">
RTC 简介
电子产品世界http://www.eepw.com.cn/article/226866.htm
实时时钟是一个独立的定时器。RTC模块拥有一组连续计数的计数器,在相应软件配置下,可提供时钟日历的功能。修改计数器的值可以重新设置系统当前的时间和日期。RTC模块和时钟配置系统(RCC_BDCR寄存器)是在后备区域,即在系统复位或从待机模式唤醒后RTC的设置和时间维持不变。
系统复位后,禁止访问后电子产品世界http://www.eepw.com.cn/article/226866.htm备寄存器和RTC,防止对后备区域(BKP)的意外写操作。执行以下操作使能对后备寄存器和RTC的访问:
● 设置寄存器RCC_APB1ENR的PWREN和BKPEN位来使能电源和后备接口时钟
● 设置寄存器PWR_CR的DBP位使能对后备寄存器和RTC的访问。
解决方法
单片机小Tips 玩转IAR开发STM32" style="border: none; vertical-align: middle; ">
打开Options for Target项,把那个Use MicroLIB前面打上勾,重新编译链接即可。
出现问题的原因,网上的相关解释是:这是Printf库函数的问题,需要使用MicroLIB这个库来替代默认的库。原因是默认printf并非使用串口,所以要改掉。例子的运行
单片机小Tips 玩转IAR开发STM32" style="border: none; vertical-align: middle; ">
即其中有提示RTC没有初始化,要求进行设置的提示,根据提示分别送入小时,分钟,秒的数值,即完成设置工作,程序不断地将当前时间通过串口送出。
STM32单片机小Tips之玩转IAR,开发STM32
我选用keil,理由是keil比较熟,并且,如果需要用到IAR时,肯定上手也很快。这回要用IAR了,看一看上手究竟快不快啦!