This discussion has been locked.
You can no longer post new replies to this discussion. If you have a question you can start a new discussion

关于M3 SWD接口链接失败的问题

     我们的芯片使用的是M3内核,最初是可以通过J-LINK连接上SWD接口的。但是在我们使用Keil通过SWD接口对系统内部的eFlash擦除(Erase done)和下载程序(提示下载失败)后,通过J-LINK却找不到SWD端口了;

     在连接J-LINK找不到SWD接口的情况下,通过PC CMD发出命令,可以确定当前在找不到SWD接口的情况下,可以读出DPIDR,但是向DP的CTRL/STAT写0x50000000却提示失败,读取CTRL/STAT的值,数据为0xF0000000。访问不了AP;

     我们系统上是将CPU的HCLK和FCLK连接为同一个时钟,即“内核/系统时钟”。之前怀疑过是不是HCLK不知道什么原因没有了。但是我们在芯片的测试模式下发现,时钟源是存在的,并且在j-link找不到的情况下,仍旧可以通过PC CMD发出命令读取DP寄存器,而读取DP寄存器的值是需要FCLK的;

      向CTRL/STAT写入0x50000000,提示失败,但是读取CTRL/STAT寄存器的值,却发现是0xF0000000,这能说明POWERUP是否成功了呢?

      如果CPU Lockup了,这个现象呢?

     还有什么原因可以导致这个现象呢?

     求解答。

Parents
  • 你这可能不是失败了,而是把SWD的调试IO配置为其它功能了,看下你的代码是否如此?

    如果是的话,需要用ICP方式把新程序(不要把SWD的IO口配置为其它功能)下载进去才可以。

Reply
  • 你这可能不是失败了,而是把SWD的调试IO配置为其它功能了,看下你的代码是否如此?

    如果是的话,需要用ICP方式把新程序(不要把SWD的IO口配置为其它功能)下载进去才可以。

Children
No data