请问stm32L152芯片怎么使用RTC制作万年历

2019-07-14 13:12发布

大家好,小弟在这里有个疑问,看了正点原子FI的RTC实时时钟试验后,想自己写一个STM32L152的实时时钟(万年历),但不知道如何配置,网上的资源大都是用Cube来写的,但小弟我想不用Cube来写。求大神们指点一下。
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
18条回答
jsgssg
1楼-- · 2019-07-15 16:40
苏州名之卓 发表于 2019-4-19 12:54
使用HAL库,也不用动什么脑筋,很好使

恩恩。是的。直接用stm32cube来配置的话很容易就弄好了。但主要是想不用cube然后自己弄一个写一个万年历的。谢谢提醒啦
jsgssg
2楼-- · 2019-07-15 19:20
TOPCB 发表于 2019-4-19 13:09
都差不多,L152系列的例程里面都有了。如下代码:

版主,我想问下时钟分频那里为什么是0X7F  0XFF。查了一下是同步的跟异步的,到时候用的是32.768K的外部晶振吧,原子是直接用的这个函数RTC_SetPrescaler()。那为什么要设置同步跟异步的那两个数呢。 L系列开发板没有秒中断函数,我查了一下用时间戳中断函数好像也行的,那我该怎么配置呢
TOPCB
3楼-- · 2019-07-15 22:46
 精彩回答 2  元偷偷看……
jsgssg
4楼-- · 2019-07-16 03:32
TOPCB 发表于 2019-4-19 13:58
手册中写了,The maximum resolution allowed (30.52 μs with a 32768 Hz clock) is obtained with PREDIV_S set to 0x7FFF.
用秒中断做什么?要根据实际情况来进行设置。

就像图中的打×和感叹号的语句一样,编译的时候是不通过的。我是直接把原子的代码复制过来,然后改一些地方。但现在这些地方找不到对应的函数

jsgssg
5楼-- · 2019-07-16 08:54
TOPCB 发表于 2019-4-19 13:09
都差不多,L152系列的例程里面都有了。如下代码:

好像懂了,里面的这个两个数是跟这句话有关的吧。RTC_PRER register: Write first the synchronous value and
then write the asynchronous。 然后LSE = 32.768 kHz,PREDIV_A[6:0] 127=0x7F。 PREDIV_S[12:0】 255=0xFF.这么设置的话正好外部晶振的频率是32768HZ。
TOPCB
6楼-- · 2019-07-16 10:48
楼主,你看的是103的例程吧。L152是不一样的。

一周热门 更多>