色哟哟视频在线观看-色哟哟视频在线-色哟哟欧美15最新在线-色哟哟免费在线观看-国产l精品国产亚洲区在线观看-国产l精品国产亚洲区久久

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

淺談STM32調試DEBUG相關知識

黃工的嵌入式技術圈 ? 來源:黃工的嵌入式技術圈 ? 2020-03-06 15:23 ? 次閱讀

學習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的調試特性

靈活的調試引腳分配

MCU調試盒(支持低電源模式,控制外設時鐘等)

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
    mcu
    +關注

    關注

    146

    文章

    17185

    瀏覽量

    351705
  • STM32
    +關注

    關注

    2270

    文章

    10910

    瀏覽量

    356604
  • DEBUG
    +關注

    關注

    3

    文章

    94

    瀏覽量

    19935
收藏 人收藏

    評論

    相關推薦

    keil在Debug的高級用法

    ,不建議安裝網上的一些漢化包之類的。另外建立的工程文件路徑也盡量不要存在中文,否則可能會出現一些異常。第二節基本調試方法1,基本調試操作:首先點擊"Debug->
    的頭像 發表于 12-26 21:01 ?192次閱讀
    keil在<b class='flag-5'>Debug</b>的高級用法

    單片機Debug工具性能對比 單片機調試常用命令

    。以下是對單片機調試工具性能的簡要對比以及一些常用的調試命令。 單片機Debug工具性能對比 Keil uVision 性能 :Keil uVision 是一款功能強大的集成開發環境(IDE),支持多種單片機,特別是ARM Co
    的頭像 發表于 12-19 09:56 ?347次閱讀

    單片機Debug與仿真區別

    單片機的開發是一個復雜的過程,涉及到硬件設計、軟件開發和測試等多個環節。為了確保單片機能夠按照預期工作,開發者需要使用Debug和仿真技術來檢測和修正代碼中的錯誤。 Debug調試Deb
    的頭像 發表于 12-19 09:47 ?221次閱讀

    GD32用Embedded軟件debug在線調試失敗的原因?

    請問GD32用Embedded軟件debug在線調試失敗可能是什么原因?
    發表于 09-27 07:13

    開發攻略之STM32調試端口的映射

    最近有一個項目用到了STM32F103RB系列單片機,由于引腳數量較少,不得不使用到了單片機的PB3和PB4兩個引腳。而這兩個引腳剛好又是STM32系列的JTAG調試引腳,如果要用于普通IO的功能
    的頭像 發表于 08-03 08:11 ?470次閱讀
    開發攻略之<b class='flag-5'>STM32</b><b class='flag-5'>調試</b>端口的映射

    為什么我的項目Debug運行沒問題,編譯成Release包就報錯?

    ,以提高應用性能和減少最終包的大小。相比之下,Debug模式優化級別較低,側重于縮短編譯時間和提高調試效率,
    的頭像 發表于 06-12 11:18 ?1032次閱讀
    為什么我的項目<b class='flag-5'>Debug</b>運行沒問題,編譯成Release包就報錯?

    在IAR 7.3調試STM32 usb只要配置USB的中斷NVIC_Init,在debug的時就停止不了內核,也復位不了的原因?

    在IAR 7.3調試STM32 usb 只要配置USB的中斷NVIC_Init,在debug的時就停止不了內核,也復位不了。用的是STLINKV1V2 也是一樣 是不是在配置NVIC寄存器的時候 影響到了
    發表于 05-16 06:51

    單片機開發環境中Release與Debug模式的對比分析

    Debug通常稱為調試版本。通過一系列編譯選項的配合,編譯的結果通常包含調試信息,而且不希望做優化,便于程序員調試程序。
    發表于 04-30 11:22 ?1388次閱讀
    單片機開發環境中Release與<b class='flag-5'>Debug</b>模式的對比分析

    程序使用IAR軟件在線調試debug時提示報錯,用stvp下載程序,仿真不了的原因?

    程序使用IAR軟件在線調試debug時提示“the debugging session could not be started,eiither the debugger
    發表于 04-26 06:41

    請問STM32CubeMonitor不能在debug時使用嗎?

    STM32CubeMonitor是不是不能在debug時使用?
    發表于 04-10 06:59

    STM32F769無法debug的原因?

    我最近在調試 STM32F769 使用RT Thread 系統 開始移植已經成功 結果前幾天出了問題 現在無法debugdebug 連接 提示 端口號無效GDB 端口當時是
    發表于 04-08 07:31

    L412K8U6調試Debug時進不去主函數是怎么回事?

    L412K8U6調試Debug時進不去主函數,同一個程序用STM32L412 nucleo板就可以正常調試
    發表于 04-02 06:06

    STM32CubeMX創建STM32U5系列工程,DEBUG調試下為什么沒有ST-LINK選項?

    通過STM32CubeMx創建生成一個STM32U5xxx 的MDK(keil_v5)工程,打開工程后,想通過ST-LINK進行調試,但在工程的Debug窗口并沒有ST-LINK
    發表于 03-27 06:40

    淺談智能照明系統調試階段節能方案的探究與產品選型

    淺談智能照明系統調試階段節能方案的探究與產品選型 張穎姣 安科瑞電氣股份有限公司 上海嘉定 201801 【摘要】針對當今智能照明系統調試完成前能源浪費的問題,本文結合工程案例,分析研究了智能照明
    的頭像 發表于 02-26 09:33 ?539次閱讀
    <b class='flag-5'>淺談</b>智能照明系統<b class='flag-5'>調試</b>階段節能方案的探究與產品選型

    母線保護相關知識分享

    母線保護相關知識分享
    的頭像 發表于 01-19 10:29 ?581次閱讀
    母線保護<b class='flag-5'>相關</b><b class='flag-5'>知識</b>分享
    主站蜘蛛池模板: 成人免费视频在线播放| 精品手机在线1卡二卡3卡四卡| 久久视频这有精品63在线国产| 夜色资源站国产www在线视频| 久久一本岛在免费线观看2020| 99视频这里只有精品| 色综合欧美色综合七久久| 国产午夜a理论毛片在线影院| 印度性hd18| 日日噜噜噜噜夜夜爽亚洲精品| 国产亚洲福利在线视频| 与嫂子同居的日子在线观看| 前后灌满白浆护士| 果冻传媒剧情在线观看| 97免费在线视频| 午夜阳光影院在线观看视频| 久久中文字幕免费高清| 高h原耽肉汁动漫视频| 在线观看免费av网站| 三级中国免费的| 久久人妻AV一区二区软件| 粉嫩极品国产在线观看| 婬香婬色天天视频| 天天躁夜夜踩很很踩2022 | 久草在线在线精品观看| PORN白嫩内射合集| 亚洲伊人久久一次| 日韩精品一卡二卡三卡四卡2021| 久久99精品AV99果冻传媒| 大屁股妇女流出白浆| 伊人综合在线22| 乌克兰女人与动ZOZO| 暖暖 日本 视频 在线观看免费 | 电影内射视频免费观看| 在线综合 亚洲 欧美| 无套内射在线观看THEPORN| 末成年美女黄网站色大片连接| 黑粗硬大欧美在线视频| 国产成人在线视频| BL全肉多攻NP高H| 2019精品国产品在线不卡|