松鼠3.0 - STM32开发板基础教程(七) - RTC

发布: 2009-12-22 10:41 | 作者: zyc9999 | 来源: StmFans思蜕盟 OPELC 自由电子联盟

松鼠3.0 - STM32开发板基础教程(六) - RTC
1、功能介绍
           对开发板上的STM32处理器的RTC模块进行操作,RTC模块的当前书剑通过串口传送到PC的超级终端,若RTC模块还未设置时间则通过
           超级终端进行设置RTC设置秒中断。
2、硬件连接
           在开发板上VBAT引脚接接+3V纽扣电池(P18见背面),晶振、USART等均已连接。该应用实例不需要额外电路设计,只需要用一根RS232串口通讯线
           将开发板的J1(RS232口)与PC机的串口相连即可。
3、软件设计
          程序主要内容包括:
          1、系统启动后检测RTC是否设置。由于RTC在BKP区域,当后备电源连接到VBAT上时,RTC的设置不会由于外部的电源断开而丢失。本例
               中写一个值到BKP_DR1中以表示RTC是否已配置,在启动之后程序检查BKP_DR1的值。
          2、若BKP_DR1的值不正确(BKP_DR1的值有误或者由于是第一次运行值还未写进),则需要配置时间并且询问用户调整时间。
          3、若BKP_DR1的值正确,则意味着RTC值已配置,此时将在超级终端上显示时间。
         
          整个工程包含2个源文件:STM32F10X.s、main.c 、stm32f10x_it.c,STM32F10X.s为启动代码,其所有的中断服务程序均在stm32f10x_it.c中,其他函数在main.c中。
          函数RTC_IRQHandler用于处理秒中断事件,在每次遇到23:59:29时将时钟回零
          函数RTC_Configuration用于配置RTC时间值,函数Time_Adjust  则利用函数USART_Scanf设置新的RTC时间。
          函数Time_Display 和 Time_Show 用于将RTC时间转换成字符串发往USART1。

         
          参考程序见附件。

STM32_RTC_530.rar
(2009-12-22 10:41:40, Size: 309 KB, Downloads: 45)

()