STM32 JTAG/SWD禁用導致無法燒寫解決方法


由於STM32的引腳功能較多,在為了方便硬件的使用,常會使用復用,重映射的功能,這里主要提及的是SWD和JTAG端口的引腳對應出現的問題。為了使得TIM2能夠重映射到PA15和PB3,所以得對TIM2進行重映射,但是這樣是不夠的,因為下載調試端口SWD默認就占用了該引腳,所以重映射無效,因此必須先啟動時鍾

 

void Relay_GPIO_Config(void)

{       

        GPIO_InitTypeDef GPIO_InitStructure;

 

        RCC_APB2PeriphClockCmd( RCC_APB2Periph_AFIO, ENABLE); 

        GPIO_PinRemapConfig(GPIO_Remap_SWJ_Disable, ENABLE); 

       AFIO->MAPR = 0x02000000;

        GPIO_InitStructure.GPIO_Pin = GPIO_Pin_15;  

        /*ÉèÖÃÒý½ÅģʽΪͨÓÃÍÆÍìÊä³ö*/

        GPIO_InitStructure.GPIO_Mode = GPIO_Mode_Out_PP;   

        /*ÉèÖÃÒý½ÅËÙÂÊΪ50MHz */   

        GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz; 

        /*µ÷Óÿ⺯Êý£¬³õʼ»¯GPIO*/

        GPIO_Init(GPIOA, &GPIO_InitStructure);  

        //GPIO_SetBits(GPIOA, GPIO_Pin_15);

}

 

出現的問題是:

 

JLink info:

DLL: V6.10i, compiled Oct 25 2016 19:31:51 

Firmware: J-Link ARM-OB STM32 compiled Aug 22 2012 19:52:04 

Hardware: V7.00 

S/N : 20090928 

Feature(s) : RDI,FlashDL,FlashBP,JFlash,GDBFull

 

JLink Info: STM32 (connect): Can not attach to CPU. Trying connect under reset.

JLink Info: STM32 (connect): Can not attach to CPU. Trying connect under reset. 

***JLink Error: STM32: Connecting to CPU via connect under reset failed. 

Error: Flash Download failed - Target DLL has been cancelled

 0 。先斷電 按住復位  上電

1、按着板子上面的復位鍵不放,若沒有按鍵,就用夾子短路復位電容,這樣單片機將停止程序的運行;我的是工程板,RST端口接地就行了。 

 

2. 這時候點擊Keil的下載,下方的“Build Output”窗口便會開始滾動,一會之后會提示出錯。直接關閉它,放開復位鍵。 

 

3. 如果方法2 不行,就是彈出錯誤窗口時,點NO,然后再運行一秒,馬上放開復位鍵,程序這時一般可以正常下載了,如果不行, 測試多幾次

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM