|
點擊上方藍字關(guān)注我們最近有一個項目用到了STM32F103RB系列單片機,由于引腳數(shù)量較少,不得不使用到了單片機的PB3和PB4兩個引腳。而這兩個引腳剛好又是STM32系列的JTAG調(diào)試引腳,如果要用于普通IO的功能需要先進行一定的設(shè)置。一、STM32的調(diào)試方式選擇
STM32支持JTAG和SWD兩種調(diào)試方式,且默認狀態(tài)下這兩種調(diào)試功能都是開啟的。
STM32 IO | JTAG IO | SWD IO | PB3 | ? | NC | PB4 | ? | NC | PA13 | ? | ? | PA14 | ? | ? | PA15 | ? | NC | 由此我們可以知道:如果要使用JTAG調(diào)試功能,那么PB3,PB4,PA13,PA14,PA15都不能使用;而如果我們關(guān)閉JTAG功能,但是開啟SWD調(diào)試功能,那么PB3,PB4,PA15都可以當作普通IO來使用了;
ST官方3.5的庫有提供關(guān)閉調(diào)試功能的兩個接口。
1.1 關(guān)閉所有的JTAG和SWD調(diào)試功能慎用,一旦執(zhí)行該命令,程序運行后將不能通過JTAG或SWD方法進行燒寫和下載,補救措施見文末。
RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOB | RCC_APB2Periph_AFIO, ENABLE);GPIO_PinRemapConfig(GPIO_Remap_SWJ_Disable, ENABLE);執(zhí)行上面語句后,PB3,PB4,PA13,PA14,PA15都可以當作普通iO來使用,此時不能通過J-Link進行調(diào)試了;
1.2 僅關(guān)閉JTAG調(diào)試功能該方法的好處是,解放了JTAG功能占用的引腳,但是SWD調(diào)試功能依舊可以使用。
RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOB | RCC_APB2Periph_AFIO, ENABLE);GPIO_PinRemapConfig(GPIO_Remap_SWJ_JTAGDisable, ENABLE);執(zhí)行上面語句后,PB3,PB4,PA15都可以當作普通iO來使用,且可以通過SWD進行調(diào)試。
二、關(guān)閉調(diào)試方式后如何更新程序以及仿真
2.1 關(guān)閉JTAG如何更新程序關(guān)閉JTAG調(diào)試功能以后,STM32不再支持在線仿真,且更新程序也需要通過一定操作才可以完成。此方法在開發(fā)階段慎用!
建議程序啟動時延時3-5秒后再關(guān)閉JTAG調(diào)試模式,如此,單片機斷電復(fù)位后立即點擊燒寫按鈕也是可以進行程序燒錄的。
2.2 關(guān)閉JTAG及SWD調(diào)試功能后的補救措施補救措施一:
設(shè)置啟動模式為ISP模式(BOOT0=1、BOOT1=0)或設(shè)置啟動模式為RAM運行模式(BOOT0=1、BOOT1=1)。
將開發(fā)板斷電后重新上電,此時就因不是在用戶程序模式,因此就不會執(zhí)行禁用JTAG的語句,JTAG功能也就可以正常使用。
補救措施二:
設(shè)置啟動模式為ISP模式(BOOT0=1、BOOT1=0),用ISP程序?qū)TM32的FLASH擦除,之后就可恢復(fù)JTAG功能。
補救措施三:
如果你的仿真器支持SWD仿真模式,如IAR下用JLINK、MDK下用ULINK2。直接將仿真器的模式設(shè)為SWD模,就可以不受這個禁止JTAG功能的影響了。
kppxsthjgu06403758348.png (1.92 KB, 下載次數(shù): 1)
下載附件
保存到相冊
kppxsthjgu06403758348.png
2024-9-7 12:22 上傳
歡迎轉(zhuǎn)發(fā)分享給需要的好友!
l05ocgznipi6403758448.png (1.34 KB, 下載次數(shù): 1)
下載附件
保存到相冊
l05ocgznipi6403758448.png
2024-9-7 12:22 上傳
微信號:zls_it
掃描下方二維碼添加充電站小助手微信,可以加入微信交流群
群內(nèi)每天分享一些大廠的經(jīng)典C語言語、C++面試題及知識點解析、技術(shù)話題分
享,易混淆的概念答疑等,等你來GET!!!
bykqryf2xcf6403758548.png (182.75 KB, 下載次數(shù): 1)
下載附件
保存到相冊
bykqryf2xcf6403758548.png
2024-9-7 12:22 上傳
|
|