我是卓波,很高兴你来看我的博客。

系列文章:

ESP32 LyraT音频开发板试玩(一):搭建开发环境

ESP32 LyraT音频开发板试玩(二):播放音乐

关于ESP32的开发环境搭建,官方有教程,链接如下:

https://docs.espressif.com/projects/esp-idf/zh_CN/latest/get-started/windows-setup.html

开发环境搭建

本文搭建的开发环境为window下的开发环境:

1:下载工具链

从  espressif.com 下载工具链和MSYS2压缩文件:

https://dl.espressif.com/dl/esp32_win32_msys2_environment_and_toolchain-20181001.zip

将zip压缩文件解压到D:\ (或其它路径),它会使用预先准备的环境创建一个msys32目录。

2:创建工作目录

运行 D:\msys32\mingw32.exe 打开一个 MSYS2 的终端窗口。

运行指令

mkdir -p ~/esp

创建应用程序工作目录

输入

cd ~/esp

就进入到新创建的目录

3:克隆IDF框架

在esp工作目录下执行命令

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

将IDF框架下载到 ~/esp/esp-idf 目录

4:设置IDF路径

参考链接

https://docs.espressif.com/projects/esp-idf/zh_CN/latest/get-started/add-idf_path-to-profile.html

用户配置文件脚本存放在 D:/msys32/etc/profile.d/ 目录中。每次打开 MSYS2 窗口时,系统都执行这些脚本。

在 D:/msys32/etc/profile.d/ 目录下创建一个新的脚本文件。将其命名为 export_idf_path.sh。

确定 ESP-IDF 目录的路径。本文用到的IDF路径为D:\msys32\home\user-name\esp\esp-idf。

在脚本中加入export命令

export IDF_PATH="D:/msys32/home/user-name/esp/esp-idf"

请将原始 Windows 路径中将反斜杠替换为正斜杠。

保存脚本。

关闭 MSYS2 窗口并再次打开。

输入以下命令检查是否设置了 IDF_PATH:

printenv IDF_PATH

将此前在脚本文件中输入的路径打印出来。

5:克隆ADF框架

在esp工作目录下执行命令

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

将ADF框架下载到 ~/esp/esp-adf 目录

6:设置ADF路径

与IDF路径设置同理

程序编译

ESP32在window下的开发环境已经搭建完成,下面进行简单的测试:

将D:\msys32\home\user\esp\esp-idf\examples\get-started目录下的hello_world工程直接拷贝到esp目录下

然后运行mingw32.exe进入hello_world目录

运行make

没有创建sdkconfig文件的情况下会进入menucofig,因为不进行配置修改,直接退出再make就好

报错了。。。

那就根据提示安装一下吧

再make,还是提示要安装python的依赖库

执行命令

python -m pip install --upgrade pip

D:/msys32/mingw32/bin/python.exe -m pip install --user -r D:/msys32/home/user/esp/esp-idf/requirements.txt

然后再make,编译成功了,并显示了需要烧录的三个文件和烧录地址

下载程序

在乐鑫官网下载烧录工具

https://www.espressif.com/zh-hans/support/download/other-tools

打开esp32的烧录程序,导入要烧写的文件和响应的地址,然后选择连接的串口,点击START开始烧写。在开发板上按住boot键,在点击一下rst复位键,进行程序下载

然后复位开发板,在串口调试助手中,可以看到”hello world”字眼,程序烧写成功

代码编辑开发

因为比较喜欢vs的编辑界面,所以采用vs code进行代码编辑

将app_main程序里边的代码修改为

void app_main()
{
printf("Hello zorb!\n");
}

再make和烧写运行

在串口调试显示

最后

本文主要搭建esp32在window下的开发环境。代码编辑、程序编译、下载运行和调试输出都试过一遍了,撒花。

后续就可以进行基于ADF的语音开发了。

版权所有,转载请打赏哟

如果你喜欢我的文章,可以通过微信扫一扫给我打赏哟

ESP32 LyraT音频开发板试玩(一):搭建开发环境的更多相关文章

  1. ESP32 LyraT音频开发板试玩(二):播放音乐

    我是卓波,很高兴你来看我的博客. 系列文章: ESP32 LyraT音频开发板试玩(一):搭建开发环境 ESP32 LyraT音频开发板试玩(二):播放音乐 本文延续上一篇博客 将D:\msys32\ ...

  2. QEMU让你无需开发板即可玩溜RT-Thread~

    1.1 本文的目的和背景 嵌入式软件开发离不开开发板,在没有物理开发板的情况下,可以使用QEMU等类似的虚拟机来模拟开发板.QEMU是一个支持跨平台虚拟化的虚拟机,它可以虚拟很多开发板.为了方便大家在 ...

  3. samrt210开发板ping-系列问题(开发板ping通主机,主机ping通虚拟机,唯独~开发板ping不通虚拟机)

    硬件:PC机.虚拟机(Linux).开发板(smart210) 常用模型: 注:1).有线网卡与无线网不可同连一个路由器,不可在同网段: 2).vmware选择桥接模式,虚拟网络适配器选定具体的网卡名 ...

  4. 【开发板试用报告】鸿蒙OS环境搭建及代码烧录

    鸿蒙系统的代码编译环境需要linux系统,软件开发和代码烧录需要windows环境. Linux环境 参考官方链接:https://gitee.com/openharmony/docs/blob/ma ...

  5. 微信小程序从零开始开发步骤(一)搭建开发环境

    从零到有写一个小程序系列专题,很早以前就想写来分享,但由于项目一直在进展,没有过多的时间研究技术,现在可以继续分享了. 1:注册 用没有注册过微信公众平台的邮箱注册一个微信公众号, 申请帐号 ,网址: ...

  6. 如何修改开发板主频--迅为iMX6UL开发板

    平台:iMX6UL开发板           iMX6UL开发板 可以在文件系统中通过命令修改 CPU 运行的主频.如下图所示,使用命令“cat /sys/devices/system/cpu/cpu ...

  7. 【ARM开发板】迅为IMX6开发板QT下LVDS和HDMI双屏异显

    本文转自迅为论坛:http://www.topeetboard.com 平台:迅为-IMX6开发板 首先开发板分别连接9.7寸屏和HDMI显示器,然后使用MfgTool工具烧写QT系统,然后拨码开关设 ...

  8. ARM开发板如何选型-I.MX6Q开发板

    拥有丰富扩展能力,供货周期长的开发平台,省事安心   处理器:迅为-i.MX6开发板恩智浦Cortex-A9 四核i.MX6Q处理器,主频1GHz,内存2G,存储16GB. 系统支持:i.MX6开发板 ...

  9. Arm开发板+Qt学习之路-开发板显示 /bin/sh: ./hello: Permission denied

    将pc上交叉编译完成的可执行文件hello,通过串口传输到开发板上后,执行./hello显示 /bin/sh: ./hello: Permission denied 解决方案:在开发板上执行  chm ...

随机推荐

  1. elasticsearch 概念

    elasticsearch 来源:https://baike.baidu.com/item/elasticsearch/3411206?fr=aladdin ElasticSearch是一个基于Luc ...

  2. Python简单介绍以及Python环境搭建(入门1)

    转载请标明出处: http://www.cnblogs.com/why168888/p/6400694.html 本文出自:[Edwin博客园] Python 简单介绍 适合领域: Web网站和各种网 ...

  3. 开始学习git

    今天看着廖雪峰的git使用教程开始学习git.不过没有将项目托管在github上,而是选择托管在了码云上. 看着明白做起来还是出了些问题,不过好在最后都解决了.果然眼高手低要不得. 试着将自己平时学习 ...

  4. C++11之 Move semantics(移动语义)(转)

    转https://blog.csdn.net/wangshubo1989/article/details/49748703 按值传递的意义是什么? 当一个函数的参数按值传递时,这就会进行拷贝.当然,编 ...

  5. bzoj 3028 生成函数

    计算完后为 f(x): 根据我翻高数书,终于推倒出来了. (- ̄▽ ̄)-

  6. 2018.11.11 Java的 三大框架:Struts+Hibernate+Spring

    ·定义:Java三大框架主要用来做WEN应用.Struts主要负责表示层的显示: Spring利用它的IOC和AOP来处理控制业务(负责对数据库的操作): Hibernate主要是数据持久化到数据库. ...

  7. vue中a的href写法

    注意点:href前面要加“:”或者v-bind: 2.字符串要用单引号“ ’ ”包住 加上了冒号是为了动态绑定数据,等号后面可以写变量. 如果不使用冒号,等号后面就可以写字符串等原始类型数据.这是就无 ...

  8. 【luogu P4137 Rmq Problem / mex】 题解

    题目链接:https://www.luogu.org/problemnew/show/P4137 求区间内最大没出现过的自然数 在add时要先判断会不会对当前答案产生影响,如果有就去找下一个答案. # ...

  9. 【题解】洛谷P1072 Hankson的趣味题 (gcd和lcm的应用)

    洛谷P1072:https://www.luogu.org/problemnew/show/P1072 思路 gcd(x,a0)=a1 lcm(x,b0)=b1→b0*x=b1*gcd(x,b0) ( ...

  10. 【题解】P1516 青蛙的约会(Exgcd)

    洛谷P1516:https://www.luogu.org/problemnew/show/P1516 思路: 设两只青蛙跳了T步 则A的坐标为X+mT   B的坐标为Y+nT 要使他们相遇 则满足: ...