问题描述
今天在用J_Link给芯片n32g032下载程序时,发现厂家提供的程序,下载是好着的,但是自己将程序稍加修改后,烧录进板子,程序正常,但是再次进行烧录时,遇到了J_Link无法识别的问题,具体问题描述为:No Cortex-M SW Device Found,并且kail5下方提示以下错误
- JLink Info: Found SW-DP with ID 0x0BB11477
- JLink Info: Failed to power up DAP
- JLink Info: Connect fallback: Reset via Reset pin & Connect.
- JLink Info: Found SW-DP with ID 0x00000477
- JLink Info: Failed to power up DAP
Error: Flash Download failed - Target DLL has been cancelled
在检查了自己的线路连接无误后,找了很多办法,最终在以为大佬的协助下,解决的该问题。
解决思路
首先出现该问题的原因是仿真器的接口被占用,导致J_Link识别不到设备,具体解决办法是解锁flash,并将flash清空,我用到J_Flash这个上位机。
首先进去该上位机后,选择新建项目,然后点击start,进入工程。
然后选择目标设备
在这个地方选择你的设备的具体信息。由于我自己的芯片ARM,并且内核是Cortex-M0,所以选在这两个。
选择完成后进入下面这个界面
在这里将SWD改为自动
然后点击target连接
观察连接时否成功,如果不成功,可以将之前的上一步的CPU改为cortex-M0+,然后再次进行连接。
连接成功后就进行下一步操作
选择Manual Programming。
先选择Unsecure Chip,解锁芯片。
再选择Erase Chip,进行擦除flash。
擦除完成后,就可以用kail5再次进行烧录了。
以上是自己遇到该问题的解决办法,希望能帮助到大家。