CMSIS-DAP和J-Link、ST-Link是什么关系?
作者:strongerHuang
公眾號:strongerHuang
學習過STM32或Cortex-M處理器的讀者對J-Link、ST-Link應該不陌生,都知道它們是下載調試器。
除了J-Link、ST-Link常見的調試器,市面上還有一種常見CMSIS-DAP Debugger,在Keil或IAR選擇調試器的時候,會有一些調試器選項。
折騰過市面上調試器的讀者應該發現一個問題,有一些不同的調試器,在Keil選擇調試器都選擇CMSIS-DAP Debugger,比如:E-Link、 GD-Link等。
那么,問題來了,CMSIS-DAP是什么?和J-Link、ST-Link有關系嗎?
一、關于CMSIS-DAP
之前的文章《Cortex-M微控制器軟件接口標準CMSIS詳細內容》有簡單描述CMSIS-DAP的內容。
CMSIS:Cortex Microcontroller Software Interface Standard,即Cortex微控制器軟件接口標準。
DAP:Debug Access Port,調試訪問端口。
CMSIS-DAP支持各種Cortex處理器CoreSight調試和跟蹤。
CMSIS-DAP為調試器提供標準化的接口,支持5線JTAG或2線SWD,其固件作為源代碼提供。
CMSIS-DAP更多信息參考地址:
https://arm-software.github.io/CMSIS_5/DAP/html/index.html
http://www.keil.com/support/man/docs/dapdebug/dapdebug_introduction.htm
二、CMSIS-DAP固件
上面說了CMSIS-DAP固件有Arm以源碼形式提供,不存在版權問題(因為針對Arm Cortex處理器,他們還希望更多人使用)。
1.固件版本
目前有兩個版本:
版本1配置使用USB HID作為與主機PC的接口。
版本2配置使用WinUSB作為與主機PC的接口,并提供高速SWO跟蹤流。
2.源碼位置
目前源碼提供在Keil MDK V5版本,安裝好Keil MDK,你在安裝目錄下就能找到源碼。
C:\Keil_v5\ARM\Packs\ARM\CMSIS\5.6.0\CMSIS\DAP\Firmware
(目前MDK V5.29,CMSIS版本為5.6.0)
3.源碼描述
從文件目錄可以看出,官方源碼提供了一些模板和例子。
目前只提供了LPC處理器的例子,如果你有這個處理器對應的板卡,可以直接使用該源碼做一個調試器。
三、CMSIS-DAP?Debugger
通過上面的介紹,你應該發現了CMSIS-DAP就是一套針對Cortex處理器的標準調試接口(協議),開發者可以在其基礎上開發一套調試器,只需要遵從這套協議即可。
因此,你們看到的一些調試器,其實就是應用了這套標準的協議。在J-Link、ST-Link里面使用的協議也不列外。
感興趣的朋友,可以花時間研究,并自制一個CMSIS-DAP調試器,如果你懂原理,我覺得你自己編寫一套ST-Link源碼都不是問題。
免責聲明:本文部分素材來源網絡,版權歸原作者所有。如涉及作品版權問題,請與我聯系刪除。
-END-
猜你喜歡
再論PID,PID其實很簡單。。。
聊聊指針
看完這篇文章,還不會做平衡小車,你來打我。
?最 后??
?若覺得文章不錯,轉發分享,也是我們繼續更新的動力。
5T資源大放送!包括但不限于:C/C++,Linux,Python,Java,PHP,人工智能,PCB、FPGA、DSP、labview、單片機、等等!
在公眾號內回復「更多資源」,即可免費獲取,期待你的關注~
長按識別圖中二維碼關注
總結
以上是生活随笔為你收集整理的CMSIS-DAP和J-Link、ST-Link是什么关系?的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 微软推出 ND H100 v5 虚拟机:
- 下一篇: 本科、硕士、博士的区别(终极版,太形象了