这段时间,发现总和STC冷启动过不去,前几天是KEIL,这两天是sscom,这运气,简直了~~~这里记下来,给各位可能会倒霉的小伙伴填个坑~
事情是这样的:在使用sscom调试STC小片机的过程中,发现PC连接目标板并使用sscom开启串口,再次关闭sscom并使用isp下载程序时,ISP竟然连不上目标板,刚开始以为是目标板有问题,后来经反复验证,发现问题。。过程省略几万字:
现象是:当使用sscom连接过目标板(只是连接后开启串口,啥操作也没有,就关闭sscom)后,再次使用isp制作仿真芯片或者编程,就出现了芯片无法连接的问题,经检查应该是USB转串口芯片RTS信号没有起作用,经替换其他市售下载器验证,也是同样的问题(使用的是CH340,不知道其他USB转串是否有这个问题)。这时将STC冷启动下载器与PC断开再重新连接,则恢复正常。
经推测应该是连接sscom(sscom打开串口)后,U转串芯片被重置了参数(与ISP的不同),导致RTS无法输出低电平脉冲(从更改后的下载器电源灯是否断电闪烁就可以看出来)。
经思考与验证,发现:如果不想断开冷启动下载器,可以使用ISP的“USB-CDC/串口助手”,点击“打开串口”后(可以关闭,也可以不关闭,因为都是同一个ISP内的操作,ISP自己会解决关闭的问题)再试,就可以恢复正常了。
下面是实验过程的一些记录:
下图是目标板连接PC后用sscom打开串口(仅打开后关闭,啥也不操作),在此之前,使用ISP制作仿真芯片和下载程序是正常(就不贴图了)的:
连接目标板后用SSCOM打开串口
下图是在sscom关闭后,使用ISP制作仿真芯片,连不上目标板的情况,失败:
制作仿真芯片失败
下图是在sscom关闭后,使用ISP下载程序,连不上目标板的情况,失败:
下载失败
下图是打开ISP界面中“USB-CDC/串口助手”,打开对应串口(ISP重新初始化下载器芯片设置),啥也不操作,关闭或者不关闭都行,不影响后面操作。
打开USB-CDC/串口助手
打开后关闭
下图是ISP(“USB-CDC/串口助手”工具)重新初始化下载器芯片设置后,制作仿真芯片和下载程序全都正常了。这时,不需要重新插拔下载器。
制作仿真芯片成功
下载成功
|