设计与开发

单片机不显示 单片机出现死机,教你从这几方面去排查

小编 2025-06-20 设计与开发 23 0

单片机出现死机,教你从这几方面去排查

笔者在在单片机系统开发过程中,总会遇到一些比较棘手的问题,

比如,当批量生产的产品,概率性出现死机情况,该如何解决。

死机问题,一般出现的问题有很多,软件硬件都有可能。本篇文章,笔者以前的实际项目出发,总结一些解决问题思路与关键点,进行说明

硬件方面:

抗干扰方面,一般需要考虑静电,可以使用静电枪进行试验,可以使用10台设备,8KV静电 分别多次操作,如果其中有一台出现死机,则可以考虑硬件抗静电部分需要强化,如usb等外部接口,需要在IO口进行防静电的电路,可以参考如下电路,或使用专用保护芯片。

USB防静电保护电路

抗辐射方面,如果系统中射频等无线电路,则需要考虑天线对单片机的影响。需要对天线位置,射频电路整个系统,不好的天线会对系统的电源稳定性,以及单片机的晶振有影响,造成单片机死机

软件方面

1考虑堆栈,编译器默认启动文件中,有堆栈设置的代码,需要调整大小

2 检查代码,是否有不合理死循环,检查是否有定义的数组溢出,造成程序跑飞

3 是否有使用内部flash存储,当不合理的flash内存操作时,也会造成死机.

经过批量试产,机器死机问题得到解决.保证产品正常生产

想了解更多电子元器件,电子开发设计,嵌入式编程,研发相关管理知识或者观点,请记得加【关注】,谢谢您

单片机故障了?干货哥给你支招

老规矩,先关注一波,本文建议收藏,方便日后查阅。

stm32这款芯片好多小伙伴都在用,但是经常会有连接仿真器失败的故障发生,尤其是新设计

的板子,最容易出现这个问题,干货哥这里有几个祖传招数授给你,包你药到病除。

0x01、排查电源是否短路

这个部分是首先要排查的,因为一旦出现短路,很可能会损坏整个板块,所以上电之前先用万

用表量一下电源正负极是否有短路现象还是非常必要的。

0x02、排查电源

电源是单片机系统的生命之源,没有电,整个系统就无法正常工作,排查电源从以下几个方面着手:

1、系统电压是否正常,这个万用表就可以解决,测量各个测试点的电压。

2 、电源纹波是否在可容忍的范围内,这个需要用示波器,万用表的采样频率不足以看到电源

电压波动。如果纹波过大会导致单片机频繁复位,或者无法启动,如果连接仿真器频繁失败,

那么别忘记看看电源是不是足够干净。

3、查看总电流是否异常,排除短路问题,这里的短路可能并不是电源正负极短路,还有可能

是某一电路模块出现了短路现象,如果电流超出了设计范围,那么稳妥的方式还是先断电,然

后用万用表检查可能故障的模块。

0x03、晶振是否起振

晶振是整个单片机系统的信号枪,没有晶振喊号子,性能再好的单片机也得趴窝,如果单片机

可以连接仿真器,但是无法正常工作,那么就需要看看是不是晶振出问题了。

1、用示波器测量晶振是否起振。

2、振荡频率是否频偏超出范围。

如果晶振没有起振或者频偏过大,就需要查看一下晶振旁边的负载电容了,查看下焊接有没有

问题,电容值是不是合理,通常调整下电容就会正常工作了。

今天我们就先讲到这里,有问题欢迎提问,对了,干货哥目前正在征集大家在项目中遇到的各种问题,一经采纳,稿酬丰厚哦,想赚点外快的同学们不要错过。

相关问答

51 单片机 计算器屏幕 不显示 数字?

如果51单片机计算器屏幕不显示数字,可能有几个原因。首先,检查电源供应是否正常,确保屏幕背光和电源电压稳定。其次,检查屏幕连接是否正确,确保连接线没有...

51 单片机 lcd1602 不显示 字符?

LCD1602是不能直接显示变量数值的,只能显示ASCII码,即显示字符。因此,要显示变量数值,需要把变量的每一位数转换成字符0~9。字符0~9的ASCII码是0x30~0x39。...

程序无法烧录 单片机 是怎么回事-ZOL问答

原因太多,接线,下载器,单片机种方面都有可能,你要描述具体的现象或是提示什么错误。型号有没有选错,串口线有没有接错,主要是这几个问题上面一大堆数据都出来...

为什么 单片机 摇摇棒 显示 不了程序?

单片机摇摇棒无法显示程序的原因可能有几种。首先,可能是程序代码存在错误或者逻辑问题,导致无法正确显示。其次,可能是摇摇棒的硬件连接有问题,例如接线错...

单片机 出现死机现象?

我个人觉得也可能是电源影响到的,难道你的电路没有设置自动复位功能么?如果具有自动复位功能,那么,如果是电压影响的话,也会重新工作的啊,那么,你的死机就...

单片机 的数据线插入笔记本电脑中, 显示 “没法识别的usb设备”...

重新启动电脑,如果还没有com口,就说明下载线芯片烧了,重新买一根,或者自己换一个芯片,不知道你用的是PL2303,还是CH340。肯能是驱动程序出错或者usb转串口芯片...

单片机 没有时钟会出现什么问题?

单片机不能运行,单片机程序运行必须要有时钟!单片机不能运行,单片机程序运行必须要有时钟!

单片机 数据发送到电脑上怎么 显示 ?

单片机数据发送到电脑上可以通过串口通信实现。首先,在单片机上编写程序,将需要传输的数据通过串口发送出去。然后,在电脑上使用串口调试工具,打开相应的串...

51 单片机 如何 不显示 高位的0?

在51单片机中,可以使用printf函数来控制数字的输出格式。当需要显示一个数值时,可以使用格式控制符%0x,其中x表示需要显示的位数,0表示在高位补0。如果需要...

单片机 汇编程序在keil中编译成功,但是Proteus中却仿真不了?

在keil中编译成功说明没有语法错误,Proteus仿真不了可能就是你的硬件电路有问题了。或者硬件电路和程序对应不上。在keil中编译成功说明没有语法错误,Proteu...

猜你喜欢