JLINK断开程序不能运行问题

来源:互联网 发布:最新网站地址发布源码 编辑:程序博客网 时间:2024/06/06 03:39

     通过JLINK把程序烧到了FLASH里,但拔出JLINK连电脑的USB端(另一端还连在板子的JTAG口),程序就不运行了,这是为什么?

     我曾以为程序不是烧到了FLASH里而是在RAM中,但是明显在MDK设置的时候是选择了烧到FLASH里的。而且这个开发板,把BOOT1给接地了,所以根本没办法将程序烧到SRAM里。

     STM32F10X手册里的说明:

   

     实际开发板电路:


    BOOT1接到了地。

    BOOT0可由跳线帽选择接高还是接地。

    某论坛上看到大神们有一种说法,说是JTAG口那端不从板上拔出来的话会一直复位。看了下开发板原理图,似乎蛮有道理。

    STM32单片机上复位接法:


   

    接了个去耦电容。

    JTAG的四线之外,也有一个接到Pin接到了复位端(pin15):


    测试吧!

    将JLINK排线插到开发板JTAG口,测复位端电压。有一个复位按键,在按键接到复位端测电压。


    测到的结果:

  

    拔掉排线后:


结果正是如此,没把接板的排线拔下来,使得系统一直处在复位状态。

但是为什么排线插上USB没插时复位脚会被拉低,这个还是不清楚。是JLINK内部的电路切换的?等候大神解答...

0 0