idf.py 命令行工具提供了一个前端界面,管理工程构建、工程部署及工程调试等操作。该前端界面使用多项工具,如:
- CMake 用于配置要构建的工程。
- Ninja 用于构建工程。
- esptool.py 用于烧录目标芯片。
创建新工程: create-project
idf.py create-project <project name>
此命令将创建一个新的 ESP-IDF 工程。此外,使用 --path 选项可指定工程创建路径。
创建新组件:create-component
idf.py create-component <component name>
此命令将创建一个新的组件,包含构建所需的最基本文件集。使用 -C 选项可指定组件创建目录。
选择目标芯片:set-target
ESP-IDF 支持多个目标芯片,运行 idf.py --list-targets 查看当前 ESP-IDF 版本支持的所有目标芯片。
idf.py set-target <target>
此命令将设置当前工程的目标芯片。
启动图形配置工具:menuconfig
idf.py menuconfig
构建工程:build
idf.py build
此命令将构建当前目录下的工程,具体步骤如下:
- 若有需要,创建构建子目录 build 保存构建输出文件,使用 -B 选项可改变子目录的路径。
- 必要时运行 CMake 配置工程,并为主要构建工具生成构建文件。
- 运行主要构建工具(Ninja 或 GNU Make)。默认情况下,构建工具会完成自动检测,也可通过将 -G 选项传递给 idf.py 来显式设置构建工具。
构建是增量行为,因此若上次构建结束后,源文件或配置并未发生更改,则不会执行任何操作。此外,使用 app、bootloader 或 partition-table 参数运行此命令,可选择仅构建应用程序、引导加载程序或分区表。
清除构建输出:clean
idf.py clean
此命令可清除构建目录中的构建输出文件,下次构建时,工程将完全重新构建。注意,使用此选项不会删除构建文件夹内的 CMake 配置输出。
删除所有构建内容:fullclean
idf.py fullclean
此命令将删除所有 build 子目录内容,包括 CMake 配置输出。下次构建时, CMake 将重新配置其输出。注意,此命令将递归删除构建目录下的 所有 文件(工程配置将保留),请谨慎使用。
在 Linux 中添加用户到 dialout
当前登录用户应当可以通过 USB 对串口进行读写操作。在多数 Linux 版本中,您都可以通过以下命令,将用户添加到 dialout 组,从而获许读写权限:
sudo usermod -a -G dialout $USER
请重新登录,确保串口读写权限生效,或许需要重启系统才能生效。
烧录工程:flash
idf.py flash
此命令将在需要时自动构建工程,随后将其烧录到目标芯片。使用 -p 和 -b 选项可分别设置串口名称和烧录程序的波特率。
监视输出
idf.py -p PORT monitor
您可以使用 idf.py -p PORT monitor 命令,监视工程的运行情况。注意,需要将 PORT 替换为您的串口名称,例如/dev/ttyUSB0,可使用快捷键 Ctrl+],退出 IDF 监视器。也可以运行以下命令,一次性执行构建、烧录和监视过程:
idf.py -p PORT flash monitor
以上就是新建ESP32C3工程的步骤,我们可以开始ESP32-C3 的入门学习了!