|
【摘要】 什么是OpenOCDOpenOCD(Open On-Chip Debugger)是一個開源的片上調(diào)試器,旨在提供針對嵌入式設(shè)備的調(diào)試、系統(tǒng)編程和邊界掃描功能。OpenOCD的功能需要調(diào)試仿真器來輔助完成,調(diào)試仿真器是一個提供調(diào)試目標電信號的小型硬件單元。常用的有JLink、STLink等,一些開發(fā)板直接集成了調(diào)試仿真器,如小熊派開發(fā)板就集成了STLink。通過下面的OpenOCD架構(gòu)圖我們能... 什么是OpenOCDOpenOCD(Open On-Chip Debugger)是一個開源的片上調(diào)試器,旨在提供針對嵌入式設(shè)備的調(diào)試、系統(tǒng)編程和邊界掃描功能。 OpenOCD的功能需要調(diào)試仿真器來輔助完成,調(diào)試仿真器是一個提供調(diào)試目標電信號的小型硬件單元。常用的有JLink、STLink等,一些開發(fā)板直接集成了調(diào)試仿真器,如小熊派開發(fā)板就集成了STLink。 通過下面的OpenOCD架構(gòu)圖我們能更好的認識OpenOCD??梢钥闯鯫penOCD提供了GDB Server,可以通過它進行GDB相關(guān)的調(diào)試操作。提供Telnet Server,可以通過Telnet連接對目標板進行燒錄、重啟等操作。OpenOCD的配置基于TCL腳本,可以使用默認自帶的TCL腳本,也可以編寫自定義的腳本。 如何使用上面我們提到OpenOCD需要調(diào)試仿真器配合使用,一般我們還會使用gdb client與其配合進行遠程調(diào)試。 具體命令行操作步驟如下:
接下來就可以使用gdb命令進行開發(fā)板的調(diào)試了。 相關(guān)概念JTAGJTAG(Joint Test Action Group,聯(lián)合測試行動小組)是一種國際標準測試協(xié)議(IEEE 1149.1兼容),主要用于芯片內(nèi)部測試?,F(xiàn)在多數(shù)的高級器件都支持JTAG協(xié)議,如ARM、DSP、FPGA器件等。標準的JTAG接口是4線:TMS、 TCK、TDI、TDO,分別為模式選擇、時鐘、數(shù)據(jù)輸入和數(shù)據(jù)輸出線。 相關(guān)JTAG引腳的定義為:
SWD串行調(diào)試(Serial Wire Debug),一種和JTAG不同的調(diào)試模式,與JTAG的20個引腳相比,SWD只需要4個(或者5個)引腳,結(jié)構(gòu)簡單,但是使用范圍沒有JTAG廣泛,主流調(diào)試器上也是后來才加的SWD調(diào)試模式。 SWD和傳統(tǒng)的調(diào)試方式區(qū)別:
OpenOCD資料
|
|
|