Espressif IDF for VSCode 爬坑之路二:ESP32 的 JTAG 调试(OpenOCD & GDB)

本文介绍了如何在Espressif IDF for VSCode中进行ESP32的JTAG调试,包括JTAG调试前的准备,如设置OpenOCD和GDB,以及通过GDB进行断点设置、调试运行、查看和修改内存等操作。重点讲解了如何配置和使用OpenOCD,以及创建gdbinit文件来设定初始化调试配置。
摘要由CSDN通过智能技术生成

今天我们来探索如何在 Espressif IDF 插件里进行 JTAG 调试。如果还未成功安装与入门 Espressif IDF for VSCode,可以先参考 Espressif IDF for VSCode 爬坑之路一:ESP32 的 esp-idf 例子编译与烧录

1. JTAG 调试前的准备

如果要在 Espressif IDF for VSCode 里启动 JTAG 调试功能,只需先按 F5 键(确保您至少已经 build 并 flash ,这样调试器才能正常工作)。 为确保可以调试设备,我们也需要在 settings.json 中设置正确的 idf.deviceInterfaceidf.board 设置,或按 F1 并键入 ESP-IDF:Device configuration。下面我将以图文并茂的形式来演示上述操作。

首先打开工程,然后编译和烧写。在这里我选择打开的是 /esp-idf/examples/get-started/blink 示例,打开后我们可以在按下 F1 后依次进行 ESP-IDF:Select port to useESP-IDF:Build your projectESP-IDF:Flash your projectESP-IDF:Monitor your device。指令对应的位置如下图(按下 F1 后)。

在这里插入图片描述

在成功看到 monitor 打开且能看到程序在正常运行后,我们需要按下 F5 键(确保您至少已经 build 并 flash ,这样调试器才能正常工作)。然后按需要选择对应的 gcc gdb 版本即可。

接下来我们还需要按 F1 并键入 ESP-IDF:Device configuration,在里面设置正确的 idf.deviceInterfaceidf.board 。键入 ESP-IDF:Device configuration 并按下回车后如下图。一般 Espressif IDF for VSCode 会默认帮我们进行正确的配置,比如使用的是自带 JTAG 调试工具的 ESP32-WROVER 开发板,然后点击下图中的 Board 时发现已经默认为 board/esp32-wrover.cfg。如果发现默认填写的内容与实际不符,大家可以按上述步骤自行更改。

在这里插入图片描述

由于我们在 Espressif IDF for VSCode 初始环境配置时就已经初始安装了 OpenOCD, 而且我使用的是自带 JTAG 调试器的 ESP32-WROVER 开发板,如果需要外接 JTAG 调试器,可以参考 JTAG 调试,所以到这里我们在软件上就配置好环境了。下一节我们将正式开始 JTAG 调试。

2. JTAG 调试

2.1 打开 OpenOCD

F1 并键入 ESP-IDF:OpenOCD Manager,我们可以看到 Start OpenOCD 选项,直接点击此选项。

在这里插入图片描述

然后我们就能看到 VSCode 界面下发弹出了一个 OUTPUT,不难看出其中有 Info : Listening on port 3333 for gdb connections 这条信息。它告诉我们 gdb 的 端口为 3333,到这里就可以再开启一个终端来进行 gdb 调试了。

在这里插入图片描述

2.2 进行 GDB 调试

我们先打开一个终端,然后进入到 /esp-idf/examples/get-started/blink</

### 回答1: espressif idf 可以在 VSCode 中使用。您可以安装 ESP-IDF 扩展程序,该扩展程序提供了与 ESP-IDF 的集成,包括代码补全、调试和构建功能。此外,您还需要安装 CMake 工具和 ESP-IDF 工具链。安装完成后,您可以使用 VSCode 编辑器来编写和调试 ESP32 应用程序。 ### 回答2: Espressif IDF是底层库,提供了许多强大的功能,比如Wi-Fi和BLE通信等。Espressif IDF的使用者需要选择一个合适的集成开发环境(IDE),然后在其中配置、编写、运行代码。其中,Visual Studio Code(简称VS Code)是一个基于电脑的轻量级集成开发环境,使得使用者可以轻松地开发和测试他们的Espressif IDF应用程序。相比其他IDE,VS Code最大的优势是快速且灵活地支持各种编程语言和框架。以下是一些使用Espressif IDF和VS Code的好处和步骤: 好处: 1. 自动完成和代码提示功能。VS Code通过代码的结构和规则自动完成和提示代码。 2. 轻便方便。VS Code支持多个平台,使用方便,资源占用少。 3. 插件丰富。VS Code具有开放的插件系统,可以丰富开发者的功能和便利性。 步骤: 1. 下载Espressif IDF SDK。下载Espressif IDF SDK提供各种工具和API来帮助用户创建、编译和运行代码。 2. 安装VS Code。在Windows/Linux/Mac OS平台上安装VS Code开发工具。 3. 配置开发环境。通过VS Code的插件系统,开发者可以轻松地配置他们的开发环境。例如,安装C/C++、Python、Terminal、Git等插件。 4. 预置编译工具链。这将使得VS Code能够自动编译Espressif IDF的代码,简化开发流程。 5. 创建项目。通过执行idf.py create-project my-project-name命令创建项目。 6. 编写和调试代码。在VS Code IDE中,使用者可以轻松地编写和调试代码,并直接将代码上传到芯片中进行执行。 总之,使用Espressif IDF和VS Code的好处很多,步骤也很简单实用。因此,建议开发者可以尝试使用这样的结合方式来实现各种智能硬件项目。 ### 回答3: Espressif IDF是一个开源的,灵活的,围绕着Espressif产品的软件开发框架。它提供了API和工具集,用于开发ESP32ESP8266芯片的应用程序。而在使用Espressif IDF时,Visual Studio Code成了极佳的选择,因为它是一种开源的跨平台集成开发环境。通过以下的几个步骤,你就可以将Espressif IDF用在Visual Studio Code上。 1. 安装Visual Studio Code 首先,你需要将Visual Studio Code下载到你的电脑上。它可以在Windows、Mac和Linux上运行,并且可以从官方网站下载。在安装之后,请确保你已经安装了合适的插件。 2. 安装Espressif IDF 然后,你需要安装Espressif IDF。你可以用以下的命令来安装: 'git clone --recursive https://github.com/espressif/esp-idf.git' 这会在你的计算机上创建一个esp-idf文件夹,其中包含所有的Espressif IDF工具。 3. 安装CMake Tools插件 在Visual Studio Code里,你需要安装一个插件,叫做CMake Tools。这个插件允许你使用CMake来构建你的应用程序。你可以在Visual Studio Code的插件市场里下载这个插件。 4. 配置Espressif IDF路径 在Visual Studio Code里,你需要配置Espressif IDF路径。打开终端,进入到你的应用程序文件夹,创建一个名为.vscode的文件夹,并在其中创建一个名为settings.json的文件。在这个文件里,添加以下的代码: { "cmake.configureSettings": { "IDF_PATH": "/path/to/your/esp-idf" } } 5. 编写代码 接下来,你需要在Visual Studio Code里编写你的代码。你可以使用CMake Tools插件来编写你的代码,并用以下命令来构建你的应用程序: 'cmake --build /path/to/your/project/folder/build' 在构建之后,你可以用以下的命令来运行你的应用程序: 'cd /path/to/your/project/folder/build && idf.py flash && idf.py monitor' 总之,在使用Espressif IDF时,Visual Studio Code是一个强大的选择。它可以提供更好的开发体验和更好的性能,从而帮助你的开发工作。通过以上几个步骤,你就可以轻松地将Espressif IDF运用在Visual Studio Code上啦!
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值