學習STM32開發,肯定少不了DEBUG調試這一步驟。那么,本文帶你了解一下這個調試相關的知識。
本文以STM32F1、Cortex-M3為例,其它系列芯片或內核,原理相同或類似。
1概況
在STM32中,有很多調試組件。使用它們可以執行各種調試功能,包括斷點、數據觀察點、 閃存地址重載以及各種跟蹤。
STM32F1使用Cortex-M3內核,該內核內含硬件調試模塊,支持復雜的調試操作。
硬件調試模塊允許內核在取指(指令斷點)或訪問數據(數據斷點)時停止。內核停止時,內核的內部狀態和系統的外部狀態都是可以查詢的。完成查詢后,內核和外設可以被復原,程序將繼續執行。
當STM32F10x微控制器連接到調試器并開始調試時,調試器將使用內核的硬件調試模塊進行調試操作。
2
調試框圖
STM32F1和Cortex-M3的調試框圖:
提示:Cortex-M3內核內含的硬件調試模塊是ARM CoreSight開發工具集的子集。
ARM Cortex-M3內核提供集成的片上調試功能。它由以下部分組成:
SWJ-DP:串行/JTAG調試端口
AHP-AP: AHB訪問端口
ITM:執行跟蹤單元
FPB:閃存指令斷點
DWT:數據觸發
TPUI:跟蹤單元接口(僅較大封裝的芯片支持)
ETM:嵌入式跟蹤微單元(在較大的封裝上才有支持此功能的引腳),專用于STM32F1的調試特性
靈活的調試引腳分配
3
調試接口
STM32支持兩種調試接口:
串行接口
JTAG調試接口
STM32的5個普通I/O口可用作SWJ-DP(串行/JTAG調試)接口引腳:
4
SWJ調試端口(serial wire and JTAG)
STM32內核集成了串行/JTAG調試接口(SWJ-DP)。這是標準的ARM CoreSight調試接口,包括JTAG-DP接口(5個引腳)和SW-DP接口(2個引腳)。
1.JTAG調試接口(JTAG-DP)為AHP-AP模塊提供5針標準JTAG接口。
2. 串行調試接口(SW-DP)為AHP-AP模塊提供2針(時鐘+數據)接口。
在SWJ-DP接口中, SW-DP接口的2個引腳和JTAG接口的5個引腳中的一些是復用的。
SWJ調試端口:
上面的圖顯示異步跟蹤輸出腳(TRACESWO)和TDO是復用的。因此異步跟蹤功能只能在SWDP調試接口上實現,不能在JTAG-DP調試接口上實現。
JTAG-DP和SW-DP切換的機制
JTAG調試接口是默認的調試接口。如果調試器想要切換到SW-DP,必須在TMS/TCK上輸出一指定的JTAG序列(分別映射到SWDIO和SWCLK),該序列禁止JTAG-DP,并激活SW-DP。該方法可以只通過SWCLK和SWDIO兩個引腳來激活SW-DP接口。
指定的序列是:
1. 輸出超過50個TCK周期的TMS(SWDIO)= 1信號
2. 輸出16個TMS(SWDIO)信號 0111100111100111 (MSB)
3. 輸出超過50個TCK周期的TMS(SWDIO)= 1信號
5
JTAG腳上的內部上拉和下拉
保證JTAG的輸入引腳不是懸空的是非常必要的,因為他們直接連接到D觸發器控制著調試模式。必須特別注意SWCLK/TCK引腳,因為他們直接連接到一些D觸發器的時鐘端。
為了避免任何未受控制的I/O電平, STM32在JTAG輸入腳上嵌入了內部上拉和下拉。
JINTRST:內部上拉
JTDI:內部上拉
JTMS/SWDIO:內部上拉
TCK/SWCLK:內部下拉
一旦JTAG I/O被用戶代碼釋放, GPIO控制器再次取得控制。這些I/O口的狀態將恢復到復位時的狀態。
JNTRST:帶上拉的輸入
JTDI:帶上拉的輸入
JTMS/SWDIO:帶上拉的輸入
JICK/SWCLK:帶下拉的輸入
JTDO:浮動輸入
軟件可以把這些I/O口作為普通的I/O口使用。
6
利用串行接口并釋放不用的調試腳作為普通I/O口
為了利用串行調試接口來釋放一些普通I/O口,用戶軟件必須在復位后設置SWJ_CFG=010,從而釋放PA15, PB3和PB4用做普通I/O口。
在調試時,調試器進行以下操作:
在系統復位時,所有SWJ引腳被分配為專用引腳(JTAG-DP + SW-DP)。
在系統復位狀態下,調試器發送指定JTAG序列,從JTAG-DP切換到SW-DP。
仍然在系統復位狀態下,調試器在復位地址處設置斷點
釋放復位信號,內核停止在復位地址處。
從這里開始,所有的調試通信將使用SW-DP接口,其他JTAG引腳可以由用戶代碼改配為普通I/O口。
提示:這個地方就是需要大家配置相關的引腳。
-
mcu
+關注
關注
146文章
17185瀏覽量
351705 -
STM32
+關注
關注
2270文章
10910瀏覽量
356604 -
DEBUG
+關注
關注
3文章
94瀏覽量
19935
發布評論請先 登錄
相關推薦
評論