OpenEdv-开源电子网

 找回密码
 立即注册
正点原子全套STM32/Linux/FPGA开发资料,上千讲STM32视频教程免费下载...
查看: 5917|回复: 3

RTC原理。。。。(新手)

[复制链接]

75

主题

458

帖子

4

精华

金牌会员

Rank: 6Rank: 6

积分
1635
金钱
1635
注册时间
2012-8-28
在线时间
71 小时
发表于 2013-6-6 15:03:12 | 显示全部楼层 |阅读模式
RTC->CRH
RTC->CRL
这2寄存器我就不多说了

RTC->RLH和RTC->RLL(简称 RTC->R)
是预分频(尼玛,就是重装值,给倒计数用的)

RTC->DIVH和RTC->DIVL
正在倒计数(该寄存器倒计数到0时,会把 RTC->R的值拿过来重新倒计时)//就像点蜡烛,蜡烛烧完了,要重新点根新蜡烛。(蜡烛能点多长时间由 RTC->R决定)


RTC->CNT  H/L
这是计数值(就是记录点了多少根蜡烛了。32位)

RTC->ALR  H/L
闹钟(用于判断设定的值和现在的值是否一样。)

RCC->BDCR
这是RTC工作设置   位16(备份域复位)  位15(RTC使能)  位98(RTC时钟来源)  位2(低外时钟旁路)   位1(低外就绪)   位0(低外使能)


QQ750273008有好的资料记得发给我哦。。。
正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165540
金钱
165540
注册时间
2010-12-1
在线时间
2117 小时
发表于 2013-6-6 16:50:31 | 显示全部楼层
总结的不错,呵呵.
不过这里:RTC->DIVH和RTC->DIVL
有问题吧,这里是分频系数,不是正在倒计数.就像你的蜡烛的大小,生日蛋糕型的蜡烛,一下就点完了,烧香拜佛用的蜡烛,半天都烧不完...
我是开源电子网www.openedv.com站长,有关站务问题请与我联系。
正点原子STM32开发板购买店铺http://openedv.taobao.com
正点原子官方微信公众平台,点击这里关注“正点原子”
回复 支持 反对

使用道具 举报

75

主题

458

帖子

4

精华

金牌会员

Rank: 6Rank: 6

积分
1635
金钱
1635
注册时间
2012-8-28
在线时间
71 小时
 楼主| 发表于 2013-6-10 10:21:21 | 显示全部楼层
这是设置时间的函数,时间跑偏了可以用它纠正时间  RTC_Set(2013,6,10,10,21,55)
u8 RTC_Set(u16 syear,u8 smon,u8 sday,u8 hour,u8 min,u8 sec)
{
u16 t;
u32 seccount=0;
if(syear<1970||syear>2099)return 1;    
for(t=1970;t<syear;t++) //把所有年份的秒钟相加
{
if(Is_Leap_Year(t))seccount+=31622400;//闰年的秒钟数
else seccount+=31536000;   //平年的秒钟数
}
smon-=1;
for(t=0;t<smon;t++)    //把前面月份的秒钟数相加
{
seccount+=(u32)mon_table[t]*86400;//月份秒钟数相加
if(Is_Leap_Year(syear)&&t==1)seccount+=86400;//闰年2月份增加一天的秒钟数    
}
seccount+=(u32)(sday-1)*86400;//把前面日期的秒钟数相加 
seccount+=(u32)hour*3600;//小时秒钟数
    seccount+=(u32)min*60;  //分钟秒钟数
seccount+=sec;//最后的秒钟加上去
    
//设置时钟
    RCC->APB1ENR|=1<<28;//使能电源时钟
    RCC->APB1ENR|=1<<27;//使能备份时钟
PWR->CR|=1<<8;    //取消备份区写保护
//上面三步是必须的!
RTC->CRL|=1<<4;   //允许配置 
RTC->CNTL=seccount&0xffff;
RTC->CNTH=seccount>>16;
RTC->CRL&=~(1<<4);//配置更新
while(!(RTC->CRL&(1<<5)));//等待RTC寄存器操作完成  
return 0;     
}
QQ750273008有好的资料记得发给我哦。。。
回复 支持 反对

使用道具 举报

75

主题

458

帖子

4

精华

金牌会员

Rank: 6Rank: 6

积分
1635
金钱
1635
注册时间
2012-8-28
在线时间
71 小时
 楼主| 发表于 2013-6-10 10:23:52 | 显示全部楼层
年份什么的怎么么算我一窍不通,只大概知道rtc工作原理。
QQ750273008有好的资料记得发给我哦。。。
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则



关闭

原子哥极力推荐上一条 /2 下一条

正点原子公众号

QQ|手机版|OpenEdv-开源电子网 ( 粤ICP备12000418号-1 )

GMT+8, 2025-7-18 22:14

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

快速回复 返回顶部 返回列表