STM32 RTC学习笔记

前一段时间画了一个stm32f103c8t6最小系统

之前没弄过,都是买现成的,RTC电路出了问题,开始一直没弄明白,问题到底出在了哪里,经过查官方手册,发现32.768晶振需要的电容电容值在5pF到15pF之间,PCB产生的电容值一般在2pF到7pF,所以晶振两端要接的负载电容值为3pF到8pF,开始接的是20pF的电容,用示波器测试波形的话,RTC-OSC-OUT一直有波形,RTC-OSC-IN 有几秒波形然后就没波形了,算不起振,不用示波器测波形能起振;于是换了6pF,然后用和不用示波器测波形,都能起振,RTC-OSC-IN,RTC-OSC-OUT都有波形。

如何确认芯片RTC晶振起振了呢,方法就是选择RTC时钟为LSE,选择tamper引脚(PC13)RTC时钟64分频输出,如果用示波器看到512hz(32.768k/64)方波,说明晶振已经起振;选择LSI(40k)的时间,tamper引脚输出的是600多HZ的方波。

测试HSE起振的方法是

选择HSE时钟,设置MCO为超过8Mhz,然后用示波器测PA8引脚波形。


20170329

今天晚上又做了测试,RTC 32.769k(12.5p负载的)用20p电容也能起振,rtcoscout 连接示波器波形正常,rtcoscin连接示波器后没有波形持续几秒后消失。

发现前几天有个板子HSE晶振不起振原因是有一个电容有焊错了,焊了一个1np的,还有一个板子也是同样情况,也是够了。

江科大STM32笔记中提到了RTC(实时时钟)的相关内容。RTC是一个独立的定时器,可以提供时钟日历的功能,并且可以通过修改计数器的重新设置系统的当前时间和日期。在STM32CubeMX中可以进行RTC的配置。 另外,EXTI是外部中断线,它可以监测指定GPIO口的电平信号变化,并且当GPIO口产生电平变化时,EXTI会向NVIC(中断向量控制器)发出中断申请。经过NVIC的裁决后,CPU可以执行对应的中断程序。EXTI和NVIC的时钟在STM32中是默认打开的,因为NVIC是内核的外设,不需要手动开启时钟,而RCC(时钟控制寄存器)负责管理内核外的外设。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* [STM32CubeMX RTC配置STM32 RTC时钟掉电日期不更新](https://download.csdn.net/download/qq_22560021/85415300)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] - *2* *3* [STM32学习笔记(基于B站江科大标准库教程)](https://blog.csdn.net/weixin_62127790/article/details/128665970)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值