使用二级域名会影响网站收录,wordpress 5.0.3修改注册页,公司网站建设需要多少钱,百度六安分公司文章目录 ESP32开发环境搭建安装ESP-IDF搭建一个最小工程现象 ESP32开发环境搭建
最近有个小项目需要用到能够联网的mcu驱动#xff0c;准备玩玩esp的芯片#xff0c;记录下ESP32开发环境搭建的过程。
ESP-IDF 是乐鑫科技为其 ESP32 系列芯片提供的官方开发框架。这个框架主… 文章目录 ESP32开发环境搭建安装ESP-IDF搭建一个最小工程现象 ESP32开发环境搭建
最近有个小项目需要用到能够联网的mcu驱动准备玩玩esp的芯片记录下ESP32开发环境搭建的过程。
ESP-IDF 是乐鑫科技为其 ESP32 系列芯片提供的官方开发框架。这个框架主要用于开发、构建和部署基于 ESP32的物联网IoT应用。 笔者主要开发环境是ubuntu系统所以本文主要介绍ubuntu环境下的搭建。
安装ESP-IDF
首先安装ESP-IDF SDK
mkdir -p ~/esp
cd ~/esp
git clone --recursive https://github.com/espressif/esp-idf.gitSDK下载下来之后我们还需要下载对应的工具才能实现编译、下载以及调试仿真,下一步安装对应的工具
cd ~/esp/esp-idf
./install.sh all./install.sh all 会安装所有的esp芯片如果你只需要特定系列的芯片选择特定的芯片会加快下载工具速度。
安装完成以后就可以设置环境变量通过官方提供的命令行开始操作了
cd ~/esp/esp-idf
. ./export.sh# 可以通过如下指令查看SDK支持的命令
idf.py --help搭建一个最小工程
下面基于命令行搭建一个开发环境
创建一个新demo工程保存在/home/tao/work/code/esp_ws/demo路径下
idf.py create-project --path /home/tao/work/code/esp_ws/demo demosdk会自动生成如下文件
➜ demo tree .
.
├── CMakeLists.txt
└── main├── CMakeLists.txt└── demo.c1 directory, 3 files设置目标芯片 sdk支持多款芯片可以使用 idf.py --list-targets 来列举当前支持的芯片型号
idf.py set-target esp32设置芯片型号以后系统会自动生成很多文件主要是一个build文件夹和一个sdkconfig文件
➜ demo tree . -L 2
.
├── build
│ ├── app-flash_args
│ ├── bootloader
│ ├── bootloader-flash_args
│ ├── bootloader-prefix
│ ├── build.ninja
│ ├── CMakeCache.txt
│ ├── CMakeFiles
│ ├── cmake_install.cmake
│ ├── compile_commands.json
│ ├── config
│ ├── config.env
│ ├── esp-idf
│ ├── flash_app_args
│ ├── flash_args
│ ├── flash_args.in
│ ├── flash_bootloader_args
│ ├── flasher_args.json
│ ├── flash_project_args
│ ├── kconfigs.in
│ ├── kconfigs_projbuild.in
│ ├── ldgen_libraries
│ ├── ldgen_libraries.in
│ ├── log
│ ├── partition-table-flash_args
│ └── project_description.json
├── CMakeLists.txt
├── main
│ ├── CMakeLists.txt
│ └── demo.c
└── sdkconfig
编译工程 使用如下指令编译工程
idf.py build刷机 编译成功以后将开发板通过串口接入PC识别到串口以后可以通过如下指令刷程序
idf.py -p PORT flashPORT 为串口号
清除工程 可以使用如下指令清除工程
idf.py clean
idf.py fullclean监控 可以通过如下命令来监控芯片的运行状态
idf.py monitor
# 也可以一块使用刷机后直接监控
idf.py -p /dev/ttyUSB0 flash monitor上面这一步可能会刷机失败因为对/dev/ttyUSB0访问的权限问题需要将当前用户加入到dialout用户组
sudo usermod -aG dialout $USER$USER为当前登陆的的用户名/dev/ttyUSB0根据自己实际的串口端口填写。
现象
在上面的demo.c中填入如下内容
#include stdio.hvoid app_main(void)
{printf(hello test \r\n);int i 20;while(i--){printf(hello test i %d \r\n, i);}
}
然后在工程路径下执行如下指令刷机监控
idf.py -p /dev/ttyUSB0 flash monitor现象如下 观察完毕以后如果想退出串口使用如下快捷键 Ctrl ] 即可