ESP32和ESP-PROG的調試


入手了一個esp-prog想嘗試調試一下

發現步入了官方都沒發現的坑

1.因為裝的是官方的esp-idf離線版,里面驅動都已經下載好了。打開設備管理器,連esp-prog可以看見2個com。官方說是正常現象。

 

 

然后在esp-idf中輸入自己工程的位置,配置工程都是順風順水的。

 

 

 

 

 

 

 

但是實際照着官方后面調試簡介中的運行openocd,就開始遇見問題了

 

openocd -f board/esp32-wrover-kit-3.3v.cfg

輸入后,esp-prog識別不到,官方也沒給個解釋

E:\project\uart_async_rxtxtasks>openocd -f board/esp32-wrover-kit-3.3v.cfg Open On-Chip Debugger  v0.10.0-esp32-20210401 (2021-04-01-15:46) Licensed under GNU GPL v2 For bug reports, read http://openocd.org/doc/doxygen/bugs.html
Info : Listening on port 6666 for tcl connections Info : Listening on port 4444 for telnet connections Error: libusb_open() failed with LIBUSB_ERROR_NOT_SUPPORTED Error: libusb_open() failed with LIBUSB_ERROR_NOT_FOUND Error: no device found Error: unable to open ftdi device with vid 0403, pid 6010, description '*', serial '*' at bus location '*' Error: no device found Error: unable to open ftdi device with vid 0403, pid 6014, description '*', serial '*' at bus location '*' Assertion failed! Program: E:\ESP-TOOL\.espressif\tools\openocd-esp32\v0.10.0-esp32-20210401\openocd-esp32\bin\openocd.exe File: ../src/jtag/core.c, Line 343 Expression: jtag_trst == 0

后面百度發現,是驅動問題,需要下載Zadig工具,步驟可以參考大佬的博客,安裝完之后,驅動正常,

 

 

 

重來一遍出現了這個,上面找不到另一個usb端口(懷疑是串口的),我都不知道成沒成功。

 

 

 

E:\project\uart_async_rxtxtasks>openocd -f board/esp32-wrover-kit-3.3v.cfg Open On-Chip Debugger  v0.10.0-esp32-20210401 (2021-04-01-15:46) Licensed under GNU GPL v2 For bug reports, read http://openocd.org/doc/doxygen/bugs.html
Info : Listening on port 6666 for tcl connections Info : Listening on port 4444 for telnet connections Error: libusb_open() failed with LIBUSB_ERROR_NOT_SUPPORTED Info : ftdi: if you experience problems at higher adapter clocks, try the command "ftdi_tdo_sample_edge falling" Info : clock speed 20000 kHz Info : JTAG tap: esp32.cpu0 tap/device found: 0x120034e5 (mfg: 0x272 (Tensilica), part: 0x2003, ver: 0x1) Info : JTAG tap: esp32.cpu1 tap/device found: 0x120034e5 (mfg: 0x272 (Tensilica), part: 0x2003, ver: 0x1) Info : esp32.cpu0: Target halted, PC=0x400D5295, debug_reason=00000001 Info : esp32.cpu1: Target halted, PC=0x400E4036, debug_reason=00000000 Info : Listening on port 3333 for gdb connections

最后百度查到樂鑫官方論壇中,技術人員說這是已經能和esp-prog的板子溝通正常了,可以去嘗試debug。我當時很無語,因為我溝通正常也沒能debug。

然后查找問題可能出在eclipse上,我用的是eclipse2021-06版的,里面有專門的espressif 關於gdb openocd 的配置。

打開debug configurations

雙擊esp-idf gdb openocd debugging

 

 

 

點擊disable

 

 

 

根據自己的板子型號選擇開發板

 

 

 這時它會出錯,

 

 

 

 1~2行,說明openocd是運行正常的

3~7行,是錯誤報告。說明錯誤出現在它找不到boards/esp32-wrover-kit-3.3v.cfg

1 Open On-Chip Debugger  v0.10.0-esp32-20210401 (2021-04-01-15:46) 2 Licensed under GNU GPL v2 3 For bug reports, read 4     http://openocd.org/doc/doxygen/bugs.html
5 embedded:startup.tcl:26: Error: Can't find boards/esp32-wrover-kit-3.3v.cfg
6 in procedure 'script' 
7 at file "embedded:startup.tcl", line 26

可是我之前在esp-idf 4.3 cmd 執行過這個指令:

openocd -f board/esp32-wrover-kit-3.3v.cfg

 

 技術人員說沒問題,那就一定沒有問題。

翻看它說找不到文件的地方:

E:\ESP-TOOL\.espressif\tools\openocd-esp32\v0.10.0-esp32-20210401\openocd-esp32\share\openocd\scripts\board,找到了文件

 

 

 好的,破案了。

重新回到debug configurations的這個頁面,把boards改成board就好

 

 

 

隨后,日志正常輸出!!!(看紅色的那邊)

 

 

 折騰了8小時,就只為調試。。。道路且長且珍惜


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM