找回密码
 立即注册
查看: 1606|回复: 6

单片机出现死机的问题

[复制链接]
  • 打卡等级:初来乍到
  • 打卡总天数:1
  • 最近打卡:2023-12-25 15:38:27

39

主题

204

回帖

651

积分

高级会员

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

单片机出现死机的问题-1.png
回复

使用道具 举报 送花

  • 打卡等级:偶尔看看III
  • 打卡总天数:32
  • 最近打卡:2025-04-30 10:59:33

25

主题

1154

回帖

2391

积分

超级版主

积分
2391
发表于 2023-3-22 17:02:38 | 显示全部楼层
扩展寄存器访问使能打开了没有?其它地方有没有进行关闭或者改写P_SW2寄存器?
STC官网:https://www.stcai.com/
QQ:2593903262
微信号:18106296598
  • 打卡等级:初来乍到
  • 打卡总天数:1
  • 最近打卡:2023-12-25 15:38:27

39

主题

204

回帖

651

积分

高级会员

积分
651
发表于 2023-3-22 17:15:02 | 显示全部楼层
STCAI-32*** 发表于 2023-3-22 17:02
扩展寄存器访问使能打开了没有?其它地方有没有进行关闭或者改写P_SW2寄存器? ...

扩展寄存器访问使用有打开了,其他地方没有使用P_SW2.
1.png
  • 打卡等级:以坛为家I
  • 打卡总天数:248
  • 最近打卡:2025-04-27 09:57:01
已绑定手机

24

主题

756

回帖

3315

积分

超级版主

积分
3315
QQ
发表于 2025-1-16 16:35:41 | 显示全部楼层
现有个客户也是出现了此类问题,客户询问:现在生产遇到了有些单片机出现死机问题,打开开关,亮灯后,就无法关闭,有没有可能单片机烧录过程静电造成的?大概出现此类现象有百分之20的几率,单片机断电重启后可解决。请问是什么原因造成的呢?求助大佬,目前客户没有使用到SPI、I2C、UART等功能。单片机型号是8H1K08
截图202501161636081916.jpg

点评

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

使用道具 举报 送花

  • 打卡等级:以坛为家II
  • 打卡总天数:423
  • 最近打卡:2025-05-01 07:10:25
已绑定手机

76

主题

4833

回帖

8343

积分

超级版主

DebugLab

积分
8343
发表于 2025-1-16 16:56:27 | 显示全部楼层
8051*** 发表于 2025-1-16 16:35
现有个客户也是出现了此类问题,客户询问:现在生产遇到了有些单片机出现死机问题,打开开关,亮灯后,就无 ...

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

使用道具 举报 送花

  • 打卡等级:以坛为家I
  • 打卡总天数:312
  • 最近打卡:2025-03-11 13:20:13

54

主题

1327

回帖

5395

积分

荣誉版主

积分
5395
发表于 2025-1-16 16:59:35 | 显示全部楼层
堆栈溢出?
程序问题?
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:以坛为家II
  • 打卡总天数:458
  • 最近打卡:2025-05-01 07:48:22
已绑定手机
已实名认证

110

主题

2219

回帖

5452

积分

版主

积分
5452
发表于 2025-1-16 20:36:29 | 显示全部楼层
i2c操作的时候对时序有要求,如果没有满足时序就会卡死在wait等待中。
可能出现的情况有:下载后没有给i2c从设备断电,从设备仍然处于上次时序通讯操作中间部分。
所以对一些指令会进行忽视,导致两方通讯状态不同而卡死。
如果出现这个情况说明上电时序可能不对,需要对i2c的wait函数增加延迟跳出。
或者使用看门狗功能进行超时重启。
回复 支持 反对

使用道具 举报 送花

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|手机版|小黑屋|深圳国芯人工智能有限公司 ( 粤ICP备2022108929号-2 )

GMT+8, 2025-5-2 00:10 , Processed in 0.133678 second(s), 97 queries .

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

快速回复 返回顶部 返回列表