打印
[STM32F1]

STM32F107VC金龙开发板 第七章 金龙107——RTC

[复制链接]
1651|1
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
第七章 金龙107——RTC

7.1 RTC简介:
    RTC是“Real  Time Clock”的简称,意为实时时钟,想必各位读者都非常熟悉这一模块(例如DS1302),事实上,RTC模块在电子产品上的应用非常广泛,从大型的工业机器到个人电脑、家用电器甚至是廉价的电子手表,都不乏RTC的身影。
    STM32微控制器向用户提供了一个简易的RTC单元,之所以说其简易,因为其本质上是一个独立的32位定时器,没有类似DS1302的日历功能(相应的软件配置也可实现)
RTC使用的时钟源有三种,分别为高速外部时钟的 128 分频:HSE/128;低速内部时钟 LSI;使 用HSE 分频时钟或 LSI 的话,在主电源 VDD 掉电的情况下,这两个时钟来源都会受到影响,因此没法保证 RTC 正常工作。因此 RTC 一般使用  低速外部时钟 LSE,频率为实时时钟模块中常用的 32.768KHz,这是因为 32768 = file:///C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp\ksohtml\wpsE6.tmp.png,分频容易实现,所以它被广泛应用到 RTC 模块。在主电源 VDD 有效的情况下(待机)RTC 还可以配置闹钟事件使 STM32 退出待机模式。
7.2实验说明:
金龙107开发板V1.0一块,J-linkV8keil4.23STM3.2库文件V3.5.0,USB数据线一根
3.2寸彩屏一块(SSD1298),串口线一根在本实验中,主要使用STM32F107RTC来实现数字时钟设计,通过串口打印输出到上位机
主要跳线帽:JP4JP7都接在2-3上,JP10JP11接在2-3
7.3硬件说明:
本实验主要涉及的硬件是3.2寸彩屏的显示和USART1的使用,
7.4程序说明:
本程序设计要点如下:
    ①配置RCC寄存器组,打开APB1总线上的PWRBKP设备时钟,开启LSE(外部低速晶振,典型值为32.768khz)并选择其为RTC计时时钟。
    ②配置GPIOUSART寄存器组。
    ③配置RTC寄存器组,使能秒中断,设置        RTC时钟分频值为32767。
    ④配置NVIC,开启RTC秒事件中断。
    本实验配置主要是对于RTC的配置,如果你是第一次启动的话,根据串口提示,他会首先让你设置时间,在你不断电,复位的时候不需要从新设置时间,一旦断电,则时间就需要重新通过串口设置,RTC的配置如下:
注意:
    我们要区分RTC的两个时钟,一是来自APB1总线的PCLK1时钟(36MHz,另一个是来自外部低速晶振LSE所提供的32.768kHz时钟。其中PCLK1时钟是供给STM32打开以及存取备份电源控制区的写保护用的,而写保护开关包含在BKP以及PWR寄存器组中,来自LSE的时钟则仅给RTC提供给32位定时器计数使用。
本例中也使能了RTC秒中断,每秒中断一次,置标志位为1,主函数检测到该标志位,则把实时时间打印输出。进入中断之后,判断中断源,清除中断标志位。我们从这里不难看出,RTC进行一次计时的时间T=32767+1/32.768kHz=1s。这样就可以得到时间间隔为秒的中断事件,同时读者也应该认识到为什么会有32.768kHz这样频率的晶振存在_____当某个分频寄存器的位数达到15位以上时,就可以提供至少为file:///C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp\ksohtml\wpsE9.tmp.png=32768的分频值,配合32.768kHz的晶振就可以得到1Hz的频率,即1s时间周期,因此,32.768kHz的晶振经常用于带有实时时钟的系统中。
如果内核要对 RTC 寄存器进行任何的写操作,在内核发出写指令后,RTC模块在 3 RTCCLK 时钟之后,才开始正式的写 RTC 寄存器操作。我们知道RTCCLK 的频率比内核主频低得多,所以必须要检查 RTC 关闭操作标志位RTOFF,当这个标志被置 1 时,写操作才正式完成。这里调用了库函数RTC_WaitForLastTask();来确保写操作的完成。
同时本例中使用到了USART1的收发功能,断电之后首次启动,设置实时时间,和程序运行时,打印输出实时时间。
7.5实验现象:
连接串口线,设置好串口调试助手,注意端口要对应,彩屏蓝色字体显示“Gold Dragon ”, 红色字体显示:"RTC example:",其实彩屏在本例中,作用并不大,可忽略,我们在输入框里输入1,连续回车6次,程序就开始计时并通过RS232把时间发送到串口调试助手,设置和实验现象如下图

沙发
mmuuss586| | 2015-4-14 21:35 | 只看该作者

这么辛苦,支持下;

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

个人签名:专业生产销售STM32开发板,仿真器,http://openmcu.taobao.com/

71

主题

283

帖子

11

粉丝