STM32
直播中

李浯

8年用户 1119经验值
私信 关注
[问答]

STM8开始烧写了程序后运行正常,但过一段时间后,运行不正常了,程序烧写不进去的原因?

开始烧写了程序后运行正常,但过一段时间后,运行不正常了,程序烧写不进去,不知是芯片坏了,还是芯片锁了。
备注:同一个设备换个芯片后烧写程序及运行就正常了。
          用的是STM8S207CB

麻烦各位大神帮忙看看,谢谢~~~

> Programming  PROGRAM MEMORY area...
Error : Cannot communicate with the device !
Check the SWIM cable connection and check all the needed pin connections on the SWIM connector.

If the application code uses Swim Disable and Reset pin as Output or has disabled SWIM Clock Divider:
Try Now to SWITCH OFF and ON the application Power Supply while NRST Reset pin is forced low.

Error : < PROGRAM MEMORY programming failed.


回帖(1)

夏日余晖

2024-5-10 17:17:26
STM8单片机在程序开始烧写后运行正常,但过一段时间后运行不正常,且程序烧写不进去,可能有以下几个原因:

晶振问题:晶振是单片机运行的时钟源,如果晶振没有起振或工作不稳定,单片机可能无法正常运行。检查晶振的连接和周围元件,确保晶振没有损坏,并且连接稳定。
电源问题:不稳定的电源供应可能导致单片机运行不稳定。确保单片机使用的电源电压稳定,并且符合单片机的工作电压要求。
复位电路问题:复位电路异常也可能导致单片机无法正常运行。检查复位电路中的元件,如复位按钮、电阻和电容等,确保它们工作正常。
程序错误:如果程序本身存在错误,例如死循环、内存泄漏等,可能导致单片机运行一段时间后出现问题。检查并修复程序中的错误。
SWIM线路问题:STM8单片机使用SWIM(Single-Wire Interface Module)进行程序烧写。如果SWIM线路存在问题,可能导致程序无法正确烧写到单片机中。检查SWIM线路的连接和状态,确保没有断开或短路等问题。
烧写器或软件问题:使用的烧写器或烧写软件可能存在兼容性问题或故障。尝试使用其他烧写器或烧写软件进行烧写,看看问题是否仍然存在。
单片机内部损坏:如果单片机内部损坏,例如Flash存储器损坏、CPU损坏等,可能导致程序无法正常运行或无法烧写。这种情况下,可能需要更换新的单片机。
针对以上可能的原因,可以采取以下措施进行排查和修复:

检查晶振、电源和复位电路等硬件连接和状态,确保它们工作正常。
使用调试工具检查并修复程序中的错误。
检查SWIM线路的连接和状态,确保没有断开或短路等问题。
尝试使用其他烧写器或烧写软件进行烧写。
如果怀疑单片机内部损坏,可以尝试更换新的单片机进行测试。
举报

更多回帖

发帖
×
20
完善资料,
赚取积分