单片机运行需要正常的电压、上电复位、时钟起振、正常的程序
发现单片机不工作时,可以用排除法,逐一排除不能正常工作的原因。所有问题都排除了,它自然就恢复正常工作了。
检查VCC电压
使用万用表直流电压挡,测量单片机VCC的电压是否正常、稳定。如果电压不在单片机的工作范围内,它自然就不能工作了,需要检查电源的电路,查找并解决供电问题。
如果VCC电压不稳定,波动太大也会导致单片机不能正常工作,电压瞬间拉低也会导至单片机低电压复位。
检查复位电路
用示波器检查复位电路有没有给单片机提供上电复位信号,如果没有上电复位信号,单片机自然就不能自常的上电工作了。
检查复位电路所用的电阻以及电容设计是否合理,电阻、电容的值不合理,产生的上电时序不符合单片机要求,会导致单片机上电复位失败。如果使用单片机内部复位,需要检查单片机是否配置为内置复位。
在PCB设计时,复位电路的元器件需要尽量的靠近单片机复位引脚。
检查振荡电路
振荡器作为单片机的系统时钟源,没有系统时钟源单片机是不能工作的。如果使用了单片机内部振荡器,需要检查单片机是否配置内置振荡器作为时钟源。
如果使用外部振荡器作为系统时钟源,检查外部振荡器所用的负载电容和负载电阻是否符合单片机要求。
可以用示波器测量振荡器引脚的波形,判断是否起振。
检查程序
单片机需要有运行程序才可以工作,如果在做样或者生产时单片机不工作,需要检查是否正确的下载了程序。
如果在程序开发阶段,可以在仿真软件中设置断点,观察程序是否按照你的想法运行,如果运行不正常,需要检查程序是否有问题。也可以运行简单的程序,比如点亮一个LED,看看能不能正常工作,先确定系统配置是否正确。
检查是否因为看门狗复位(WDT)导致单片机一直复位不能正常工作。
排除以上问题后,相信单片机已经恢复正常工作了。
单片机不工作的原因有很多,首先应该从以下几方面入手:
1、单片机供电是否正常(稳定),3.3V或者5V
2、单片机最小系统是否正常,比如晶振是否工作正常
3、单片机是否有漏焊或者虚焊的引脚
4、程序是否烧录成功,可以用点亮LED的方式检测
5、程序里面是否存在死循环
6、程序是否跑飞,可以尝试使用看门狗监测
带MCU的电路排查问题,都是从硬件开始排查,最后才是排查软件,硬件是电路正常工作的基础。