980578873 发表于 2023-3-22 16:32:18

单片机出现死机的问题

大家好,小弟遇到一个很奇怪的问题:单片机(STC8H1K17)容易出现死机的现象,此时绿灯和橙灯都没有按照程序的意思去闪烁,而且保持常亮(程序初始化已关灯),串口也不打印任何信息。解决此问题的办法是:屏蔽I2C总线的读写两个函数,缺一不可,或者单片机断电重启也可以解决问题,目前原因未知,请教大家帮忙分析指点,谢谢。


AI-32位8051 发表于 2023-3-22 17:02:38

扩展寄存器访问使能打开了没有?其它地方有没有进行关闭或者改写P_SW2寄存器?

980578873 发表于 2023-3-22 17:15:02

STCAI-32位8051 发表于 2023-3-22 17:02
扩展寄存器访问使能打开了没有?其它地方有没有进行关闭或者改写P_SW2寄存器? ...

扩展寄存器访问使用有打开了,其他地方没有使用P_SW2.

8051启蒙者 发表于 2025-1-16 16:35:41

现有个客户也是出现了此类问题,客户询问:现在生产遇到了有些单片机出现死机问题,打开开关,亮灯后,就无法关闭,有没有可能单片机烧录过程静电造成的?大概出现此类现象有百分之20的几率,单片机断电重启后可解决。请问是什么原因造成的呢?求助大佬,目前客户没有使用到SPI、I2C、UART等功能。单片机型号是8H1K08

DebugLab 发表于 2025-1-16 16:56:27

8051启蒙者 发表于 2025-1-16 16:35
现有个客户也是出现了此类问题,客户询问:现在生产遇到了有些单片机出现死机问题,打开开关,亮灯后,就无 ...

可能是逻辑错误造成死循环,或读高阻IO(且悬空)的状态,或电源问题
具体分析需要提供原理图PDF和程序(包括单片机型号、版本、ISP软件版本、下载工具型号、电源上下电波形、主时钟频率等硬件选项)

LAOXU 发表于 2025-1-16 16:59:35

堆栈溢出?
程序问题?

王昱顺 发表于 2025-1-16 20:36:29

i2c操作的时候对时序有要求,如果没有满足时序就会卡死在wait等待中。
可能出现的情况有:下载后没有给i2c从设备断电,从设备仍然处于上次时序通讯操作中间部分。
所以对一些指令会进行忽视,导致两方通讯状态不同而卡死。
如果出现这个情况说明上电时序可能不对,需要对i2c的wait函数增加延迟跳出。
或者使用看门狗功能进行超时重启。
页: [1]
查看完整版本: 单片机出现死机的问题