原创

ESP32学习一:搭建开发环境

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/wx198210/article/details/86503070

学习之前的一些话

一直从事软件开发,现在为止都在使用java,golang等做android及后台服务的开发。之前还是在做 Windows Mobile开发时候使用 C/C++。
这段时间有些一空闲时间,打算找一些不同的方向学习学习。看过下机器学习,这是当下很火的一个方向,刚才身边有同事一直对这方面的学习很感兴趣。初步了解一下,发觉里面要学习的内容博大精深,自身对python也完全没有学习过,先放下。
现在物联网也十分的火,家里也买了很多小米的设备,各种不同的设备能连接在一起,是十分有趣也方便的事情,一直对嵌入式编程有些兴趣,但工作环境不同,了解得不多。于是决定选择这个方向学习一下,充实一下。

选择ESP32

嵌入式编程这块很陌生,怎么样开始学习呐。网上一通乱搜后有一点概念,还是不了解。总之,找个自己有兴趣的方向,慢慢开始吧。现在什么设备都离不开网络,蓝牙,wifi,把各个独立的设备连接在了一起,好,就选择这个了。
开始了解蓝牙,wifi相关的嵌入时开发,ESP32落入了我的眼中。了解中这是一个很火的产品(哈哈哈,是不是我不知道),具有 WiFi & 蓝牙 双模双核无线通信芯片,刚好适合,网上的文档也相当的多。一番选择下了,乐鑫ESP32-DevKitC(ESP32-WROOM-32D)作为我的第一个学习用开发板,淘宝。。。

前期的准备

一个开发板,一根数据线,外加一台电脑,这就是需要的硬件了。

开发环境

windows10
乐鑫官网:https://www.espressif.com/
参考文档:
https://docs.espressif.com/projects/esp-idf/zh_CN/latest/index.html

环境准备

软件环境分为了三块:

  • 编译源码需要的工具链
  • 开发ESP32需要的SDK(ESP-IDF)
  • 编写代码及烧制在开发板需要的环境

工具链:

因为是在widnows环境下,没有内置的 “make” 环境,因此你需要一个 GNU 兼容环境, 官方这里使用 MSYS2 来提供该环境:
https://dl.espressif.com/dl/esp32_win32_msys2_environment_and_toolchain-20181001.zip
下载后直接解压,根据你的环境双击mingw32.exe,启动命令窗口。
msys32
/opt/xtensa-esp32-elf目录下是ESP32开发相关的工具链.bin目录下是相关的编译可执行程序。

ESP-IDF

在Mingw32命令窗口中,可以直接通过git命令拉取esp-idf。这里需要注意的是一定要加上recursive参数,嵌套拉取子模块。

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

如果git clone时候没有拉取子模块可以使用下面命令来重新获取

git submodule update --init

另外,官网文档里说明,不能使用gitLab上ZIP 下载包,必须得git clone下载。
下载好后,需添加到Mingw环境变量中,如这里进入 F:\msys32\etc\profile.d/ 目录下创建一个新的脚本文件。将其命名为 export_idf_path.sh,这里写入widnows下对应的路径esp-idf:

export IDF_PATH="F:/msys32/home/wx/esp/esp-idf"

添加完后重新打开mingw32窗口,使之生效:
ESP-IDF
依赖的 Python 软件包
ESP-IDF 所依赖的 Python 软件包位于 $IDF_PATH/requirements.txt 文件中,您可以通过运行以下命令来安装它们,下载的MSYS2包里已包含了python2.7:

python -m pip install --user -r $IDF_PATH/requirements.txt

IDE选择

官网上使用了Eclipse做为ESP的开发IDE,这里因为我的电脑已安装了VSCode,所以先选择这个作为我开发的IDE.暂时我没有使用IDE的方式去编译代码,而只是作为编写代码的工具,它的安装使用就不多讲了,这里做一点补充:
VSCode安装C/C++插件
C/C++

esp-idf\examples下面有一些示例代码,这里我先拷贝一个hello world,(esp-idf\examples\get-started\hello_world)到我的工作目录下,使用VSCode打开,其中hello_world_main.c就是工程的示例代码了:
vscode
这个时候你会发现无法打开include的文件,这里需要添加IDF-PATH的路径到工程中,
c_cpp_properties.json

结束

至此,所有环境搭建结束,后续继续学习第一个程序hello world,以及如果烧写到开发板中运行。搭建过程中尝试使用VSCode来编译代码,但还没有编译成功,这里面有先不写具体的过程了,等成功编译后再进行补充。

展开阅读全文

没有更多推荐了,返回首页