TDA2030功放電路圖 電動車充電器電路圖 電子電路 功放電路 電子制作 集成塊資料 電子報 pcb 變壓器 元器件知識 逆變器電路圖 電路圖 開關電源電路圖 傳感器技術 led 電磁兼容
電子電路圖
當前位置: 首頁 > 電子電路 > 設計編程

解析STM32單片機JTAG的復用方法

時間:2018-12-26 14:37:12來源:網絡 作者:電子愛好者 點擊:
先來copy下 JTAG、SW接口的定義JTAG:JTAG(JointTest Action Group;聯合測試工作組)是一種國際標準測試協議,主要用于芯片內部測試?,F在多數的高級器件都支持JTAG協議,

先來copy下 JTAG、SW接口的定義

JTAG:JTAG(JointTest Action Group;聯合測試工作組)是一種國際標準測試協議,主要用于芯片內部測試?,F在多數的高級器件都支持JTAG協議,如DSP、FPGA器件等。標準的JTAG接口是4線:TMS、TCK、TDI、TDO,分別為模式選擇、時鐘、數據輸入和數據輸出線。

SWD:SW(Serial Wire Mode Interface),串行接口線模式。在串行線模式,只有針TCLK和TMS使用。TDO數據輸出引腳是一個可選。

SWD下載調試 原理圖:

從圖中看到:板子使用SWD接口下載調試,即使用SWDIO、SWCLK(PA13、PA14);PB3–JTDO 默認功能為JTAG的,而這里用作其他的功能–普通I/O。

問題來了:

1、需要關掉PB3的JTAG功能,復用為其他功能。

2、SWD 和傳統的調試方式區別。

STM32JTAG復用相關方法 :

直接上代碼,如下:

RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOB|RCC_APB2Periph_AFIO,ENABLE);//改變指定管腳的映射GPIO_Remap_SWJ_JTAGDisableJTAG-DP失能+SW-DP使能GPIO_PinRemapConfig(GPIO_Remap_SWJ_JTAGDisable,ENABLE);。..。...12345

但,當設置了以上語句后,當運行了這兩個語句后,JTAG仿真就與目標失去去聯系。

解決辦法有:

1、設置啟動模式為ISP模式(BOOT0=1、BOOT1=0)或設置啟動模式為RAM運行模式(BOOT0=1、BOOT1=1)。 將開發板斷電后重新上電,此時就因不是在用戶程序模式,因此就不會執行禁用JTAG的語句,JTAG功能也就可以正常使用。

2、設置啟動模式為ISP模式(BOOT0=1、BOOT1=0),用ISP程序將STM32的FLASH擦除,之后就可恢復JTAG功能。

3、如果你的仿真器支持SWD仿真模式,如IAR下用JLINK、MDK下用ULINK2。 直接將仿真器的模式設為SWD模,就可以不受這個禁止JTAG功能的影響了。

我的環境切合第三個解決方案,IAR設置如下:

SWD 和傳統的調試方式區別 :

SWD 模式比 JTAG 在高速模式下面更加可靠。 在大數據量的情況下面 JTAG 下載程序會失敗, 但是 SWD 發生的幾率會小很多?;臼褂?JTAG 仿真模式的情況下是可以直接使用 SWD 模式的, 只要你的仿真器支持。 所以推薦大家使用這個模式。

在大家 GPIO 剛好缺一個的時候, 可以使用 SWD 仿真, 這種模式支持更少的引腳。

在大家板子的體積有限的時候推薦使用 SWD 模式, 它需要的引腳少, 當然需要的 PCB 空間就小啦! 比如你可以選擇一個很小的 2.54 間距的 5 芯端子做仿真接口。

容-源-電-子-網-為你提供技術支持

本文地址:http://www.morningstargreenhouses.com/dz/22/15458062702847.shtml


本文標簽:


.
頂一下
0%
返回首頁
0
0%

------分隔線----------------------------
發表評論
請自覺遵守互聯網相關的政策法規,嚴禁發布色情、暴力、反動的言論。
表情:
名稱: E-mail: 驗證碼: 匿名發表
發布文章,推廣自己產品。
亚洲熟妇无码一区二区三区苍井空|色喜国模苍井空|欧美曰本理论在线dⅴd|久久久久69精品成人片