STM32 103 内部定时器不准

本文介绍STM32F10x系列微控制器中PLL的配置方法,针对滴答定时器不准确的问题进行分析,并提供了解决方案。文中详细解释了如何配置PLL以达到期望的72MHz时钟频率,并通过更换晶振的谐振电容解决了实际运行中遇到的问题。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

system_stm32f10x.c

    /*  PLL configuration: PLLCLK = HSE * 9 = 72 MHz HSE=12M*/
    RCC->CFGR &= (uint32_t)((uint32_t)~(RCC_CFGR_PLLSRC | RCC_CFGR_PLLXTPRE |
                                        RCC_CFGR_PLLMULL));
    RCC->CFGR |= (uint32_t)(RCC_CFGR_PLLSRC_HSE | RCC_CFGR_PLLMULL6);

    /*  PLL configuration: PLLCLK = HSE * 9 = 72 MHz HSE=8M*/
    RCC->CFGR &= (uint32_t)((uint32_t)~(RCC_CFGR_PLLSRC | RCC_CFGR_PLLXTPRE |
                                        RCC_CFGR_PLLMULL));
    RCC->CFGR |= (uint32_t)(RCC_CFGR_PLLSRC_HSE | RCC_CFGR_PLLMULL9);

程序烧录进去之后发现滴答定时器不准。搜索一番后发现8M 12M部分需要修改,
改完之后发现还不对,滴答定时器慢了9倍,判断问题为外部晶振不起振,是用了内部8M HSI,
示波器测量发现果然是。后换晶振的谐振电容 ok。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值