mollylawrence 发表于 2024-12-10 12:39

电源滤波不足、电磁干扰、PCB布局不合理等都可能影响

claretttt 发表于 2024-12-10 14:02

在MCU中实现异常记录机制,如使用EEPROM或闪存记录复位前的关键信息。

AloneKaven 发表于 2024-12-10 15:11

加打印日志吧

phoenixwhite 发表于 2024-12-10 15:36

大多数 MCU 都有内置的复位标志寄存器。

adolphcocker 发表于 2024-12-10 16:36

如果NRST引脚(外部复位引脚)被拉低,且持续时间超过一定阈值(通常为20us),则会导致系统复位。因此,检查NRST引脚的电平状态也是判断复位原因的一种方法。

lzbf 发表于 2024-12-10 18:03

检查MCU的复位引脚(如NRST)的电平变化,可以通过外部电路(如上拉电阻、电容)来记录复位状态。

jonas222 发表于 2024-12-10 18:59

特别注意看门狗定时器的配置,确保其正常工作。

mollylawrence 发表于 2024-12-10 20:30

通过测量电源电压或检查电源管理电路,可以判断是否存在欠压情况。

timfordlare 发表于 2024-12-11 17:11

使用JTAG、SWD或者其他调试接口连接到MCU,并利用调试工具读取复位原因和其他相关信息。

pentruman 发表于 2024-12-11 20:04

异常复位可能由电源问题或时钟问题引起。检查电源电压是否稳定,是否在MCU规定的范围内。同时,确保时钟配置正确,没有超出MCU的主频工作范围。

alvpeg 发表于 2024-12-11 20:59

大多数MCU都会有一个或多个状态寄存器,这些寄存器在复位时会设置特定的位来指示复位的原因。

louliana 发表于 2024-12-11 21:26

如果怀疑硬件问题,可以通过电路分析来检查复位电路的元件,比如检查复位电容、电阻是否损坏,是否有短路或断路情况。

chenci2013 发表于 2024-12-11 22:21

查看复位源寄存器            

fengm 发表于 2024-12-12 10:58

许多MCU内部都有复位标志位,可以通过读取这些标志位来判断复位的原因

ingramward 发表于 2024-12-12 11:21

复位脚电平跳变或处于非预期的电平。
程序无法进入用户main()程序。
系统功能失控,表现为死机、重启或异常行为。

elsaflower 发表于 2024-12-12 11:49

在可能的情况下,记录MCU的操作和事件到日志中,如果在日志中发现了不正常的序列或中断,可能表明发生了异常复位。

hilahope 发表于 2024-12-12 13:16

使用外部电路监控MCU的电源,如果检测到电源异常(如下冲、过压等),可能会触发异常复位。

burgessmaggie 发表于 2024-12-12 14:12

检查软件代码,避免无限循环、内存泄漏等问题

earlmax 发表于 2024-12-12 15:25

检查喂狗操作是否合理,包括通讯是否完整、喂狗时机是否恰当、喂狗任务是否阻塞等。

eefas 发表于 2024-12-12 15:49

在某些情况下,程序可能会因为某些条件不满足而主动调用复位函数(如NVIC_SystemReset())。如果怀疑是软件复位导致的异常,可以检查程序中是否有相关的复位调用。
页: 1 [2] 3 4
查看完整版本: 怎么知道MCU是否是异常复位?