犯了个低级错误,不小心把SWIM引脚设置成了out,结果修改的程序怎么也下载不下去了,STVP还是内嵌的programmer均显示连接设备了。不知道是不是有其他方法?还是这块芯片就报废了呢?
我推测是在reset后,我写入的程序先于SWIM上的烧写程序运行了起来,导致SWIM引脚成为了一个普通的输出引脚,进而导致STVP和ST TOOL内嵌编程工具与SWIM通信失败。我想是否有一个方法,让内部程序hold住,以使得SWIM的灌入功能先工作起来。
我想知道的是,你是不是也没有找到方法解决?或者有什么好方法解决了请不吝赐教。
如果是这样,我看也有一个好处,这种方法比任何方法都能保护程序不被读取啊,呵呵。
你用的那款芯片,是用ST-Link编程吗?我亲自试了一下,不管是SWIM引脚怎么配置,或者将SWIM功能禁用,作为普通IO口,再多次下载程序都是没问题的。我用IAR,ST-Link,实验芯片STM8S105
我想问一下,我直接用GPIO配置SWIM作为IO口后,就不能下载程序了,需要强制复位,是不是需要把SWIM口先配置为禁用?然后再配置IO口?这样还能通过SWIM口下载程序吗?