ESP32-S2环境的搭建以及搭建过程中遇到的问题

ESP32-S2环境的搭建以及搭建过程中遇到的问题

  • Windows平台下的搭建
    • 基本搭建过程
    • Windows平台下搭建遇到的问题
  • Linux平台下的搭建
    • 基本搭建过程
    • Linux平台下搭建遇到的问题

Windows平台下的搭建

基本搭建过程

ESP32-S2在Windows平台下的搭建相对比较简单,官方提供了ESP-IDF的工具下载器,工具下载器的官方使用文档
利用下载器,运行时一键下载各种工具,如交叉编译器,cmake,Ninja等。同时还会提示你选择或者下载python,Git以及已有的ESP-IDF:

对Git版本的选择或者安装
ESP32-S2环境的搭建以及搭建过程中遇到的问题_第1张图片
对python版本的选择或者安装
ESP32-S2环境的搭建以及搭建过程中遇到的问题_第2张图片
选择下载ESP-IDF
ESP32-S2环境的搭建以及搭建过程中遇到的问题_第3张图片
下载器运行结束后即完成了Windows平台上的环境的基本搭建。之后的调试语句可以参考官方的文档

https://docs.espressif.com/projects/esp-idf/zh_CN/latest/esp32/get-started/index.html#get-started-start-project
官方文档链接

Windows平台下搭建遇到的问题

在Windows,由于各种工具和ESP-IDF的下载都可以一键完成,所以一开始使用时没有仔细看遇到了问题。在这里做下记录。主要问题在于ESP-IDF版本的选择。在前面选择IDF的版本时,会出现这样的界面:
ESP32-S2环境的搭建以及搭建过程中遇到的问题_第4张图片
这里一定要选择master版本。因为这次我们使用的是ESP32-S2芯片,在使用过程中需要对芯片类型进行选择,而IDF4.0之前的版本并没有ESP32-S2芯片对应的选项,所以如果选择其他的版本完成一键安装后,后期在加载时会出现芯片选择错误这样的文字,官方提供的解决方案"set-target"指令在IDF4.0及以前的版本也并无这样的语句。当遇到这样的问题时,可以选择官方下载工具里的一键卸载“unins000.exe”,重新进行配置或者手动进行IDF版本的更新。

https://docs.espressif.com/projects/esp-idf/zh_CN/latest/esp32/get-started/windows-setup-scratch.html#get-esp-idf-windows-command-line手动更新过程

Linux平台下的搭建

基本搭建过程

Linux平台下由于没有工具下载器,比Windows平台下稍微复杂一点,需要手动下载相关的软件包。
这里采用的是Ubuntu系统,需要如下的指令:

udo apt-get install git wget flex bison gperf python python-pip python-setuptools cmake ninja-build ccache libffi-dev libssl-dev dfu-util

然后从乐鑫官方的GitHub上下载ESP-IDF:

cd ~/esp
git clone --recursive https://github.com/espressif/esp-idf.git

下载相关的编译器,python包等:

cd ~/esp/esp-idf
./install.sh

这样就完成了基本工具的配置,也就是Windows平台下工具下载器帮助完成的任务。之后的操作可以根据官方的操作来实施。

https://docs.espressif.com/projects/esp-idf/zh_CN/latest/esp32/get-started/index.html#get-started-start-project
官方文档链接

Linux平台下搭建遇到的问题

在Linux平台下进行环境的配置时,遇到的一个很大的问题是在连接好芯片后,在将程序写入flash时发现无法写入。会出现“ninja: build stopped: subcommand failed. ninja failed with exit code 1”查阅资料和请教别人后发现,主要原因是Linux操作系统下各用户之间的权限很明确。当需要向USB写入读取内容时,需要当前用户有读取的权限,所以需要将当前的用户写入dialog组。加入后还需要重新启动系统来使其生效。

sudo usermod -a -G dialout $USER

你可能感兴趣的:(ESP32-S2环境的搭建以及搭建过程中遇到的问题)