STM8关于IWDG看门狗和HSI高速时钟和复位的坑

博主在使用STM8S003F3时遇到16MHz主频下频繁复位的问题,研究发现与IWDG配置和时钟分频有关。错误的IWDG初始化代码并未导致问题解决,反而通过调整HSI时钟分频至8MHz以下解决了复位问题。进一步排查后,发现Vcap电容大小(103改为105uF)是真正的原因,揭示了不能轻易相信网上资料的重要性。

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

前言:我的第一篇博客,快被逼疯了。用的STM8S003F3,耗时5天,问题已解决,结局很坑!

但因为这一个问题,我似乎将stm8的时钟,复位,看门狗,iar的使用几乎全吃透了。

忠告:不要随随便便相信百度里头随便找来的资料!

现象:主频只在16MHz时,程序频繁复位不可控,其他现象异常离奇不阐述了,防止伤脑。

正文:前因后果是这样的:

1,我配置了16M的主频

CLK_HSIPrescalerConfig(CLK_PRESCALER_HSIDIV1);//内部高速时钟,不分频

或者:CLK->CKDIVR = 0x00;  //HSIDIV = 0 CPUDIV = 0   cpu时钟 = 16Mhz

发现它频繁自动复位,复位速度极快,找不到原因,问了老总,老总说复位和IWDG有关。

2,没学过也没设置过看门狗,那就配置吧

大体就是让我配置一下,网上各种配置方法,精简后,所有网上内容都统一为:

void IWDG_Init(void) //配置并启动看门狗

    IWDG->KR = 0xCC;    //启动独立看门狗  
 

评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值