国产精品久久久久影院,成人午夜福利视频,国产精品久久久久高潮,国产精品 欧美 亚洲 制服,国产精品白浆无码流出

歷史上的今天

今天是:2025年01月31日(星期五)

2021年01月31日 | 說(shuō)說(shuō)STM32調(diào)試DEBUG相關(guān)知識(shí)

發(fā)布者:快樂(lè)兔子 來(lái)源: eefocus關(guān)鍵字:STM32  調(diào)試  DEBUG 手機(jī)看文章 掃描二維碼
隨時(shí)隨地手機(jī)看文章

學(xué)習(xí)STM32開(kāi)發(fā),肯定少不了DEBUG調(diào)試這一步驟。那么,本文帶你了解一下這個(gè)調(diào)試相關(guān)的知識(shí)。


本文以STM32F1、Cortex-M3為例,其它系列芯片或內(nèi)核,原理相同或類(lèi)似。


1概況

在STM32中,有很多調(diào)試組件。使用它們可以執(zhí)行各種調(diào)試功能,包括斷點(diǎn)、數(shù)據(jù)觀(guān)察點(diǎn)、 閃存地址重載以及各種跟蹤。


STM32F1使用Cortex?-M3內(nèi)核,該內(nèi)核內(nèi)含硬件調(diào)試模塊,支持復(fù)雜的調(diào)試操作。


硬件調(diào)試模塊允許內(nèi)核在取指(指令斷點(diǎn))或訪(fǎng)問(wèn)數(shù)據(jù)(數(shù)據(jù)斷點(diǎn))時(shí)停止。內(nèi)核停止時(shí),內(nèi)核的內(nèi)部狀態(tài)和系統(tǒng)的外部狀態(tài)都是可以查詢(xún)的。完成查詢(xún)后,內(nèi)核和外設(shè)可以被復(fù)原,程序?qū)⒗^續(xù)執(zhí)行。


當(dāng)STM32F10x微控制器連接到調(diào)試器并開(kāi)始調(diào)試時(shí),調(diào)試器將使用內(nèi)核的硬件調(diào)試模塊進(jìn)行調(diào)試操作。


2調(diào)試框圖

STM32F1和Cortex?-M3的調(diào)試框圖:

圖片


提示:Cortex?-M3內(nèi)核內(nèi)含的硬件調(diào)試模塊是ARM CoreSight開(kāi)發(fā)工具集的子集。


ARM Cortex?-M3內(nèi)核提供集成的片上調(diào)試功能。它由以下部分組成:

  • SWJ-DP:串行/JTAG調(diào)試端口

  • AHP-AP: AHB訪(fǎng)問(wèn)端口

  • ITM:執(zhí)行跟蹤單元

  • FPB:閃存指令斷點(diǎn)

  • DWT:數(shù)據(jù)觸發(fā)

  • TPUI:跟蹤單元接口(僅較大封裝的芯片支持)

  • ETM:嵌入式跟蹤微單元(在較大的封裝上才有支持此功能的引腳),專(zhuān)用于STM32F1的調(diào)試特性

  • 靈活的調(diào)試引腳分配

  • MCU調(diào)試盒(支持低電源模式,控制外設(shè)時(shí)鐘等)


3調(diào)試接口

STM32支持兩種調(diào)試接口:


STM32的5個(gè)普通I/O口可用作SWJ-DP(串行/JTAG調(diào)試)接口引腳:

圖片


4SWJ調(diào)試端口(serial wire and JTAG)

STM32內(nèi)核集成了串行/JTAG調(diào)試接口(SWJ-DP)。這是標(biāo)準(zhǔn)的ARM CoreSight調(diào)試接口,包括JTAG-DP接口(5個(gè)引腳)和SW-DP接口(2個(gè)引腳)。


1.JTAG調(diào)試接口(JTAG-DP)為AHP-AP模塊提供5針標(biāo)準(zhǔn)JTAG接口。


2. 串行調(diào)試接口(SW-DP)為AHP-AP模塊提供2針(時(shí)鐘+數(shù)據(jù))接口。


在SWJ-DP接口中, SW-DP接口的2個(gè)引腳和JTAG接口的5個(gè)引腳中的一些是復(fù)用的。


SWJ調(diào)試端口:

圖片

上面的圖顯示異步跟蹤輸出腳(TRACESWO)和TDO是復(fù)用的。因此異步跟蹤功能只能在SWDP調(diào)試接口上實(shí)現(xiàn),不能在JTAG-DP調(diào)試接口上實(shí)現(xiàn)。


JTAG-DP和SW-DP切換的機(jī)制

JTAG調(diào)試接口是默認(rèn)的調(diào)試接口。如果調(diào)試器想要切換到SW-DP,必須在TMS/TCK上輸出一指定的JTAG序列(分別映射到SWDIO和SWCLK),該序列禁止JTAG-DP,并激活SW-DP。該方法可以只通過(guò)SWCLK和SWDIO兩個(gè)引腳來(lái)激活SW-DP接口。


指定的序列是:

1. 輸出超過(guò)50個(gè)TCK周期的TMS(SWDIO)= 1信號(hào)


2. 輸出16個(gè)TMS(SWDIO)信號(hào) 0111100111100111 (MSB)


3. 輸出超過(guò)50個(gè)TCK周期的TMS(SWDIO)= 1信號(hào)


5JTAG腳上的內(nèi)部上拉和下拉

保證JTAG的輸入引腳不是懸空的是非常必要的,因?yàn)樗麄冎苯舆B接到D觸發(fā)器控制著調(diào)試模式。必須特別注意SWCLK/TCK引腳,因?yàn)樗麄冎苯舆B接到一些D觸發(fā)器的時(shí)鐘端。


為了避免任何未受控制的I/O電平, STM32在JTAG輸入腳上嵌入了內(nèi)部上拉和下拉。

  • JINTRST:內(nèi)部上拉

  • JTDI:內(nèi)部上拉

  • JTMS/SWDIO:內(nèi)部上拉

  • TCK/SWCLK:內(nèi)部下拉


一旦JTAG I/O被用戶(hù)代碼釋放, GPIO控制器再次取得控制。這些I/O口的狀態(tài)將恢復(fù)到復(fù)位時(shí)的狀態(tài)。

  • JNTRST:帶上拉的輸入

  • JTDI:帶上拉的輸入

  • JTMS/SWDIO:帶上拉的輸入

  • JICK/SWCLK:帶下拉的輸入

  • JTDO:浮動(dòng)輸入


軟件可以把這些I/O口作為普通的I/O口使用。


6利用串行接口并釋放不用的調(diào)試腳作為普通I/O口

為了利用串行調(diào)試接口來(lái)釋放一些普通I/O口,用戶(hù)軟件必須在復(fù)位后設(shè)置SWJ_CFG=010,從而釋放PA15, PB3和PB4用做普通I/O口。


在調(diào)試時(shí),調(diào)試器進(jìn)行以下操作:

  • 在系統(tǒng)復(fù)位時(shí),所有SWJ引腳被分配為專(zhuān)用引腳(JTAG-DP + SW-DP)。

  • 在系統(tǒng)復(fù)位狀態(tài)下,調(diào)試器發(fā)送指定JTAG序列,從JTAG-DP切換到SW-DP。

  • 仍然在系統(tǒng)復(fù)位狀態(tài)下,調(diào)試器在復(fù)位地址處設(shè)置斷點(diǎn)

  • 釋放復(fù)位信號(hào),內(nèi)核停止在復(fù)位地址處。

  • 從這里開(kāi)始,所有的調(diào)試通信將使用SW-DP接口,其他JTAG引腳可以由用戶(hù)代碼改配為普通I/O口。


提示:這個(gè)地方就是需要大家配置相關(guān)的引腳。


7參看文獻(xiàn)

1.Cortex?-M3(r1p1版)技術(shù)參考手冊(cè)(TRM)


2.ARM調(diào)試接口V5


3.ARM CoreSight 開(kāi)發(fā)工具集(r1p0版)技術(shù)參考手冊(cè)


說(shuō)明:本文參考《STM32F1參考手冊(cè)》和《CM3技術(shù)手冊(cè)》。


關(guān)鍵字:STM32  調(diào)試  DEBUG 引用地址:說(shuō)說(shuō)STM32調(diào)試DEBUG相關(guān)知識(shí)

上一篇:STM32片上外設(shè)時(shí)鐘使能、失能和復(fù)位的區(qū)別
下一篇:關(guān)于STM32的這幾個(gè)寄存器,你知道嗎?

推薦閱讀

隨著中國(guó)智造的空前發(fā)展,越來(lái)越多的中小企業(yè),特別是物聯(lián)網(wǎng)出現(xiàn)了產(chǎn)品無(wú)處可檢測(cè),檢測(cè)儀器太貴,負(fù)擔(dān)起來(lái)不劃算的等問(wèn)題。但是在無(wú)物不聯(lián)的物聯(lián)網(wǎng),無(wú)線(xiàn)它看不見(jiàn),摸不著。如果沒(méi)有專(zhuān)業(yè)儀器,再資深的工程師也只能是盲人摸象。為了解決目前新興企業(yè)遇到的測(cè)試問(wèn)題和研發(fā)難點(diǎn),深圳市世強(qiáng)先進(jìn)科技有限公司準(zhǔn)備在深圳建設(shè)開(kāi)放實(shí)驗(yàn)室,預(yù)計(jì)今年三月正式投入...
SDIO簡(jiǎn)介1.SDIO主要功能及框圖STM32F4的SDIO控制器支持多媒體卡(MMC卡)、SD存儲(chǔ)卡、SD I/O卡和CE-ATA設(shè)備等。SDIO的主要功能如下:1)與多媒體卡系統(tǒng)規(guī)格書(shū)版本4.2全兼容。支持三種不同的數(shù)據(jù)總線(xiàn)模式:1位(默認(rèn))、4位和8位。2)與較早的多媒體卡系統(tǒng)規(guī)格版本全兼容(向前兼容)。3)與SD存儲(chǔ)卡規(guī)格版本2.0全兼容。4)與SD I/O卡規(guī)格版本2.0全兼容:支持良種...
一、常見(jiàn)服務(wù)機(jī)器人類(lèi)型掃地機(jī)器人AI 技術(shù)解決目前痛點(diǎn),助力行業(yè)蓬勃發(fā)展。傳統(tǒng)掃地機(jī)器人作為洗塵器的替代品,普遍存在清潔能力一般的問(wèn)題,這主要是由于:1)路徑規(guī)劃無(wú)法覆蓋所有地面區(qū)域;2)無(wú)法識(shí)別襪子、寵物糞便等不規(guī)則物體。AI 同步定位與建圖(SLAM)技術(shù)使掃地機(jī)器人能夠?qū)ξ粗h(huán)境“全覆蓋”。通過(guò)與 AI 機(jī)器視覺(jué)的結(jié)合,掃地機(jī)器人能智...
 服務(wù)于法國(guó)波爾多的Apple Store可能會(huì)對(duì)其內(nèi)部進(jìn)行重新裝修,店面的重新開(kāi)放時(shí)間可能會(huì)與該店開(kāi)業(yè)10周年紀(jì)念日相吻合。位于圣凱瑟琳的蘋(píng)果店是一家橫跨兩層的商店,位于波爾多的一個(gè)步行購(gòu)物區(qū),最初于2011年5月14日開(kāi)業(yè)。有報(bào)道稱(chēng),未來(lái)幾個(gè)月內(nèi)蘋(píng)果計(jì)劃對(duì)該店進(jìn)行重新裝修,可能會(huì)在零售店10周年紀(jì)念日之前完成。 雖然由于COVID-19的影響,...

史海拾趣

小廣播
設(shè)計(jì)資源 培訓(xùn) 開(kāi)發(fā)板 精華推薦

最新單片機(jī)文章

 
EEWorld訂閱號(hào)

 
EEWorld服務(wù)號(hào)

 
汽車(chē)開(kāi)發(fā)圈

 
機(jī)器人開(kāi)發(fā)圈

電子工程世界版權(quán)所有 京ICP證060456號(hào) 京ICP備10001474號(hào)-1 電信業(yè)務(wù)審批[2006]字第258號(hào)函 京公網(wǎng)安備 11010802033920號(hào) Copyright ? 2005-2025 EEWORLD.com.cn, Inc. All rights reserved