• 已解决 73482 个问题
  • 已帮助 5993 位优秀工程师

STM8内部看门狗不工作。

最帅的廖先生 2018-07-26 浏览量:767
STM8内部看门狗不工作,寄存器和函数库都试过了,是什么原因?
0 0 收起

我来回答

上传资料:
选择文件 文件大小不超过15M(格式支持:doc、ppt、xls、pdf、zip、rar、txt)
最佳答案
  • 我觉得,应该还是你的程序问题。

    我建议,你下载官方的标准库,或者cube库,里面有例程,参考例程来

    • 发布于 2018-07-26
    • 举报
    • 评论 0
    • 0
    • 0

其他答案 数量:11
  • 狗的时钟开了吗?狗在的总线时钟开了吗?

    基本就是这俩问题了

    • 发布于2018-07-26
    • 举报
    • 评论 0
    • 0
    • 0

  • 看门狗工作程序不正常,程序正常看门狗就不工作。
    • 发布于2018-07-26
    • 举报
    • 评论 0
    • 0
    • 0

  • 使用官方的例程试试,看看是不是芯片问题
    • 发布于2018-07-26
    • 举报
    • 评论 0
    • 0
    • 0

  • STM8的看门狗需要通过使能时钟和寄存器使能方可使能,楼主仔细检查代码,看看有没有缺漏。

    • 发布于2018-07-26
    • 举报
    • 评论 0
    • 0
    • 0

  • 再查下配置,是否开启了时钟使能;寄存器设置的对不对。
    • 发布于2018-07-27
    • 举报
    • 评论 0
    • 0
    • 0

  • 试试下面的程序,不行换块MCU。

    #include "iwdg.h"  
      
      
    void IWDGInit(void) //默认计数时间一分钟  
    {  
        //首先打开LSI时钟  
        CLK->ICKR |= (1<<3);  
        while((CLK->ICKR&(1<<4)) == 0);//等待时钟稳定  
        IWDG->KR = 0x55;//写入解锁  
        IWDG->PR = 0x06;//分频64K /256 = 250  
        IWDG->RLR = 250;//计数值250 1复位  
        IWDG->KR = 0xaa;//锁定并刷新分频器  
        IWDG->KR = 0xcc;//启动独立看门狗  
          
    }  
      
    void IWDGFeed(void)  
    {  
        IWDG->KR = 0xaa;//锁定并刷新分频器  
    }  

    • 发布于2018-07-27
    • 举报
    • 评论 0
    • 0
    • 0

  • 首先要检查一下配置,原子有详细的教程和例子,可以参考他的使用
    • 发布于2018-07-27
    • 举报
    • 评论 0
    • 0
    • 0

  • 看一下看门狗的时钟源有没配置正确
    • 发布于2018-07-28
    • 举报
    • 评论 0
    • 0
    • 0

  • 应该是程序漏了东西,看门狗没有启动
    • 发布于2018-08-03
    • 举报
    • 评论 0
    • 0
    • 0

相关问题

问题达人换一批

STM8内部看门狗不工作。