当前位置: 首页 > news >正文

如何排查GD32 MCU复位是由哪个复位源导致的?

上期为大家讲解了GD32 MCU复位包括电源复位和系统复位,其中系统复位还包括独立看门狗复位、内核软复位、窗口看门狗复位等,在一个GD32系统中,如果莫名其妙产生了MCU复位,如何排查具体是由哪个复位源导致的呢?

GD32 MCU贴心的为大家提供了一个查看复位源的寄存器,如下图所示,该寄存器的bit26-bit31显示各种复位状态,其中LPRSTF表示发生过低功耗复位、WWDGTRSTF表示发上过窗口看门狗复位、FWDGTRSTF表示发生过独立看门狗复位、SWRSTF表示发生过系统软复位、PORRSTF表示发生过POR电源复位、EPRSTF表示发生过NRST引脚复位,这几个状态标志位为只读标志位,如果希望清除复位标志,可以通过置位bit24 RSTFC控制位实现。

那么该寄存器该如何使用进行查看异常复位源呢?

建议大家在主函数入口处先检查复位源寄存器,之后将产生的复位标志通过串口打印出来,然后再清除所有的复位源。第一次上电后会将所有的复位源全部清除,等下次产生异常复位后,将会通过串口打印产生复位的复位源,此复位源即为实际产生异常复位的源头。

以上即为本期讲解,如有问题或建议,欢迎评论区讨论。

更多GD32 MCU相关咨询:https://www.gd32bbs.com/

http://www.lryc.cn/news/409511.html

相关文章:

  • 【C算法】编程初学者入门训练140道(1~20)
  • 消息队列-rabbitmq(生产者.消费者. 消息.可靠性)
  • 《InheriBT行为树》For Unity
  • 黑马头条Day11- 实时计算热点文章、KafkaStream
  • pnpm 设置国内源
  • 链表分割 C语言
  • python编程,设计一个详细的软件 与SADS 相似
  • META 备受期待的 Llama 3 405B 即将发布
  • c# Math.Round()四舍五入取整数
  • 【C++BFS算法】886. 可能的二分法
  • 【MySQL】记录MySQL加载数据(LOAD DATA)
  • 6 网络
  • SQL中CASE WHEN的用法
  • CTF-Web习题:[GXYCTF2019]Ping Ping Ping
  • python+vue3+onlyoffice在线文档系统实战20240725笔记,首页开发
  • 映美精彩色相机IFrameQueueBuffer转halcon的HObject
  • 写代码对人的影响
  • Hive-基础介绍
  • 网站如何从0-1搭建部署蓝图介绍
  • 面向对象(封装)练习题 巩固一下啦!
  • 一些问题 7/28
  • 昇思MindSpore 应用学习-基于MobileNetv2的垃圾分类
  • matlab 常用数据类型的转换
  • Cocos Creator2D游戏开发(6)-飞机大战(4)-敌机产生
  • Hugo部署到Vercel踩大坑——全是XML文件?
  • 2024 暑假友谊赛-热身1
  • Nginx系列-11 HTTP消息处理流程
  • 前端知识--前端访问后端技术Ajax及框架Axios
  • 【前端/js】使用js读取本地文件(xml、二进制)内容
  • 初步入门C ++之类的概念