ESP开发环境搭建

一、windows中搭建

 esp-idf tool(可选),下载连接如下:https://dl.espressif.com/dl/esp-idf/?idf=4.4

ESP开发环境搭建_第1张图片

下载安装tools后进入vscode进行插件安装(未离线下载idf工具也可以通过第二步通过插件下载安装)

1. vscode安装编译环境

ESP-IDF 需要安装一些必备工具,才能围绕ESP32 构建固件,包括Python、Git、交叉编译器、CMake 和Ninja 工具等。

最简单的方式是从如下网址下载ESP-IDF 工具安装器,安装器包含了相应的开发工具链以及最新稳定版本的ESP-IDF。

ESP开发环境搭建_第2张图片

也可以直接从git下载通过安装包安装idf(地址如下)

espressif/esp-idf at release/v5.0 (github.com)

ESP开发环境搭建_第3张图片

ESP开发环境搭建_第4张图片

ESP开发环境搭建_第5张图片

在VSCODE菜单中选中查看->命令面板,搜索:ESP-IDF:Configure ESP-IDF extension 进去配置

选择第二种按要求进行安装 等待时间偏长。

2、ESP-IDF基于 C/C++ 语言开发,在components目录下集成了大量功能丰富的软件组件。

ESP开发环境搭建_第6张图片

这些软件组件和功能主要有如下部分:

FreeRTOS实时操作系统,可支持多核,具有基于功能的堆分配器。

标准编程接口,包含 POSIX 线程和其他 POSIX API、BSD 套接字、线程安全的 C/C++ 标准库,支持虚拟文件​​系统。

外设驱动程序,包含SPI、I2C、UART、GPIO、I2S、ADC、DAC、电容触摸板、定时器、LED和电机PWM、RMT、脉冲计数器、CAN/TWAI、SD/eMMC/SDIO主机和SDIO从机、以太网驱动器。

WiFi驱动程序,支持WiFi Mesh协议,ESP-NOW点对点协议,ESP-LR远程协议等等。

经典蓝牙和低功耗蓝牙,包含蓝牙控制器和蓝牙协议栈,其中蓝牙协议栈Bluedroid支持经典蓝牙和低功耗蓝牙双模,而NimBLE仅支持低功耗蓝牙。

LwIP TCP/IP协议栈,可支持有线网和WiFi的互联网连接和应用。

电源管理,支持MCU低功耗模式以及 WiFi、蓝牙低功耗模式的电源管理框架。

存储管理,支持分区管理器、容错和日志结构的键值存储 (NVS),支持加密、FAT和 SPIFFS文件系统。

安全功能,具备受硬件支持的安全性能,如 Flash 加密和安全启动,为 RSA、SHA 和 AES 提供加密加速器支持。

网络配置管理,支持Bluetooth LE、WiFi 和其它带外机制的设备加载统一配置框架。

开发者可以根据开发需求,自行添加第三方或者自己的组件,添加的方式可参考components目录下ESP-IDF组件的实现方式或者参考乐鑫官方文档ESP-IDF编程指南。

也可以直接从官方示例中查看:API 参考 - ESP32-C2 - — ESP-IDF 编程指南 latest 文档

3、编译示例文件:ctl shift + p

ESP开发环境搭建_第7张图片

ESP开发环境搭建_第8张图片

ESP开发环境搭建_第9张图片

编译成功后的占用

ESP开发环境搭建_第10张图片

4、支持的云平台 Cloud Frameworks - ESP32 - — ESP-IDF 编程指南 v5.0.1 文档

AWS IoT esp-aws-iot 是基于Amazon Web Services的aws-iot-device-sdk-embedded-C的ESP32的开源存储库。

Azure物联网 esp-azure 是基于Microsoft Azure的azure-iot-sdk-c SDK的ESP32的开源存储库。

Google IoT核心 esp-google-iot 是基于Google的iot-device-sdk-embedded-c SDK的ESP32的开源存储库。

阿里云物联网 esp-aliyun 是基于Aliyun的iotkit嵌入式SDK的ESP32开源存储库。

Joylink物联网 esp-joylink 是基于Joylink的joylink_dev_sdk SDK的ESP32开源仓库。

腾讯物联网 esp-welink 是基于腾讯的welink SDK的ESP32开源仓库。

腾讯云物联网 esp-qcloud 是基于Tencentyun的qcloud-iot-sdk-embedded-c SDK的ESP32开源仓库。

Baidu IoT esp-baidu-iot 是基于百度的iot-sdk-c SDK的ESP32开源仓库。

二、Linux中搭建:

使用gitee源下载各个模块比较方便

  • Step 1:

git clone https://gitee.com/EspressifSystems/esp-gitee-tools.git

  • Step 2:

git clone https://gitee.com/EspressifSystems/esp-idf.git

注意:仅克隆 esp-idf,不包含子模块。

  • Step 3:

可以有两种方式来更新 submodules。

  • 方式一

进入 esp-gitee-tools 目录,export submodule-update.sh 所在路径,方便后期使用,如:

cd esp-gitee-tools export EGT_PATH=$(pwd)

进入 esp-idf 目录执行 submodule-update.sh 脚本:

cd esp-idf $EGT_PATH/submodule-update.sh

  • 方式二

submodule-update.sh 脚本支持将待更新 submodules 的工程路径作为参数传入,例如:submodule-update.sh PATH_OF_PROJ。

假如 Step 2 中 clone 的 esp-idf 位于 ~/git/esp32-sdk/esp-idf 目录,可使用以下方式来更新:

cd esp-gitee-tools ./submodule-update.sh ~/git/esp32-sdk/esp-idf

如果要更新其他工程,可以同样方式。至此就下载到所有需要的模块。(我使用方式一)

ESP开发环境搭建_第11张图片

安装模块

Note:不要使用 IDF 自带的 install.sh,使用 esp-gitee-tools 内的 install.sh。(下载模块时完成可以忽略)

  • Step 1:

git clone https://gitee.com/EspressifSystems/esp-gitee-tools.git

  • Step 2:

可以有两种方式来安装工具。

  • 方式一

进入 esp-gitee-tools 目录,export install.sh 所在路径,方便后期使用,如:(下载模块时完成可以忽略)

cd esp-gitee-tools export EGT_PATH=$(pwd)

进入 esp-idf 目录执行 install.sh 脚本:

cd esp-idf $EGT_PATH/install.sh

  • 方式二

install.sh 脚本支持将 ESP-IDF 工程路径作为参数传入,例如:install.sh PATH_OF_IDF。

假如 esp-idf 位于 ~/git/esp32-sdk/esp-idf 目录,可使用以下方式来更新:

cd esp-gitee-tools ./install.sh /home/huqin/esp/esp-idf

我使用方式一安装

ESP开发环境搭建_第12张图片

ESP开发环境搭建_第13张图片

运行环境:

. $HOME/esp/esp-idf/export.sh

如果您需要经常运行 ESP-IDF,您可以为执行 export.sh 创建一个别名,具体步骤如下:

1、复制并粘贴以下命令到 shell 配置文件中(.profile, .bashrc, .zprofile 等)

vi ~/.bashrc //添加 alias get_idf='. $HOME/esp/esp-idf/export.sh' :wq source ~/.bashrc

2、通过重启终端窗口或运行 source [path to profile],如 source ~/.bashrc 来刷新配置文件。

现在您可以在任何终端窗口中运行 get_idf 来设置或刷新 esp-idf 环境。

ESP开发环境搭建_第14张图片

配置:

//下面这个选择对应的型号或系列的芯片进行设置,这个操作会清除并且初始化之前配置好的设置 idf.py set-target [...] //下面我们执行指令进行配置 idf.py menuconfig //编译工程 idf.py build //烧录指令 中间的参数为波特率,默认 460800 若串口写入出错通过 chmod 777 /dev/ttyUSB0 设置权限重新烧录 idf.py -p PORT [-b BAUD] flash //监视输出 idf.py -p PORT monitor //也可以运行以下命令,一次性执行构建、烧录和监视过程 按下板子上的BOOT按键,再按下松开RST按键,最后松开BOOT按键, idf.py -p PORT flash monitor //退出监视器窗口按键: Ctrl + ]

芯片设置:

ESP开发环境搭建_第15张图片

如果 IDF 监视器在烧录后很快发生错误,或打印信息全是乱码(见下),很有可能是因为您的开发板采用了 26 MHz 晶振,而 ESP-IDF 默认支持大多数开发板使用的 40 MHz 晶振

  1. 退出监视器。
  2. 返回 menuconfig。
  3. 进入 Component config –> Hardware Settings –> Main XTAL Config –> Main XTAL frequency 进行配置,将 CONFIG_XTAL_FREQ_SEL 设置为 26 MHz。
  4. 重新 编译和烧录 应用程序

监控界面:

ESP开发环境搭建_第16张图片

参考链接:

【ESP32学习笔记】#通用篇#(1)简介及资料_JavonPeng的博客-CSDN博客_esp32简介

ESP32开发一_开发环境_esp32开发环境有哪些_huang20083200056的博客-CSDN博客

http://t.csdn.cn/WaVCx

http://t.csdn.cn/pJ1J1

docs/README-submodule-update.md · 乐鑫开源/esp-gitee-tools - Gitee.com

Ubuntu - 20.04系统安装乐鑫ESP-IDF工具链(2) --- 安装IDF_ubuntu espidf安装失败_优信电子的博客-CSDN博客

你可能感兴趣的:(ESP32学习,c语言,ESP)