ESP32学习笔记(一) 环境搭建与下载
ESP32学习笔记(一) 环境搭建与下载
作者:Nevel 博客:nevel.cnblogs.com 转载请保留出处
前几天刚入手了ESP32模块,趁着放假有时间,我们先把ESP32的编译环境搭建好
首先,我们把ESP32模块连接上电脑,如果没有ESP32底板的话,则需连接一个usb转ttl模块,接下来我们下载好两个压缩包:

Msys32为ESP32的下载工具链和仿真环境,可以从如下网址下载
https://dl.espressif.com/dl/esp32_win32_msys2_environment_and_toolchain-20160816.zip
esp32_idf为官方的固件包 可从git上同步
我们将msys32解压后放在c盘根目录,运行msys32 目录下的 msys2_shell.cmd

我们进入了一个类似命令行的页面,其实官方提供的这个下载和仿真工具其实是MSYS 因为之后的开发需要在Shell中执行一些linux下的命令 所以使用这样一个工具模拟一个unix的模拟环境。
MSYS 是用于辅助 Windows 版 MinGW 进行命令行开发的配套软件包,提供了部分 Unix 工具
官方英文解释:MSYS, a contraction of "Minimal SYSTEM", is a Bourne Shell command line interpreter system. Offered as an alternative to Microsoft's cmd.exe, this provides a general purpose command line environment, which is particularly suited to use with MinGW, for porting of many Open Source applications to the MS-Windows platform; a light-weight fork of Cygwin-1.3, it includes a small selection of Unix tools, chosen to facilitate that objective.
接下来我们正式进入命令行操作:
- 创建文件夹,同步固件包(已经下载好固件包的可直接解压到c盘根目录,并跳过此步)
输入
mkdir esp32_idf,在c盘根目录创建 esp32_idf 文件夹,
输入
cd /c/esp32_idf/
,将目录换到该文件夹
克隆 idf 固件库
之后输入 git clone --recursive https://github.com/espressif/esp-idf.git
这个需要一定时间,中途可能会报错,但是并没有什么影响。
- 添加编译所需的环境变量
打开 C:\msys32\etc\profile.d\esp32_toolchain.sh(使用记事本打开),添加
export IDF_PATH="C:/esp32_idf/esp-idf"一行,
保存并退出。
- 配置MENU CONFIG
该步骤中我们将进行一些编译有关的参数配置,ESP32官方提供了一个图形化配置界面,我们将使用他
我们先输入cd /c/esp32_idf/esp-idf/examples/01_hello_world
以为01_hello_world为根目录,对官方提供的hello world这个项目进行编译配置。
输入 make menuconfig ,等待界面出现

选择" Serial flasher config"并按下回车键
接下来选择 Default Serial Port 的时候继续按回车
输入COM15 (我的电脑为串口15,连接到其他串口修改为自己的串口号。可先使用串口助手确定ESP32所连接到的串口号)。

其他的不用修改
输入后用向右方向键选择下方的exit,回车之后再选择exit 回车后即可退出。最后还按一次回车保存设置参数。
- 进行编译与下载
输入 make flash
编译程序,程序编译完成后自动进入下载环节。当出现如下窗口时说明已经下载成功。然后按下复位键即可运行程序。
此时我们输入cat COM15
打开串口观察到:
出现我们想要看到的hello world
到此基本的 Linux 仿真环境和交叉编译工具链的配置已经完成
但是我们需要的不仅仅是一个编译下载工具,我们还需要一个ide才能开发
接下来的我们安装eclipse。
- Eclipse的安装
我们从eclipse官网上下载好eclipse C/C++ 编译器的安装包,并将安装包解压到c盘根目录,打开eclipse。

关闭欢迎界面,点击左侧project Explorer 右键选择new —>makefile project ... 那一项
未完待续…
ESP32学习笔记(一) 环境搭建与下载的更多相关文章
- Android Studio 学习笔记(一)环境搭建、文件目录等相关说明
Android Studio 学习笔记(一)环境搭建.文件目录等相关说明 引入 对APP开发而言,Android和iOS是两大主流开发平台,其中区别在于 Android用java语言,用Android ...
- 我的Java学习笔记 -开发环境搭建
开始学习Java~ 一.Java简介 Java编程语言是一种简单.面向对象.分布式.解释型.健壮安全.与系统无关.可移植.高性能.多线程和动态的语言. Java分为三个体系: JavaSE(J2SE) ...
- cocos2d-x lua 学习笔记(1) -- 环境搭建
Cocos2d-x 3.0以上版本的环境搭建和之前的Cocos2d-x 2.0 版差异较大的,同时从Cocos2d-x 3.0项目打包成apk安卓应用文件,搭建安卓环境的步骤有点繁琐,但搭建一次之后, ...
- Django学习笔记 开发环境搭建
为什么使用django?1.支持快速开发:用python开发:数据库ORM系统,并不需要我们手动地构造SQL语句,而是用python的对象访问数据库,能够提升开发效率.2.大量内置应用:后台管理系统a ...
- 前端框架vue学习笔记:环境搭建
兼容性 不兼容IE8以下 Vue Devtools 能够更好的对界面进行审查和调试 环境搭建 1.nodejs(新版本的集成了npm)[npm是node包管理 node package manager ...
- Web安全测试学习笔记 - vulhub环境搭建
Vulhub和DVWA一样,也是开源漏洞靶场,地址:https://github.com/vulhub/vulhub 环境搭建过程如下: 1. 下载和安装Ubuntu 16.04镜像,镜像地址:htt ...
- SpringData JPA的学习笔记之环境搭建
一.环境搭建 1.加入jar包 spring jar+jpa jar +springData jar >>SpringData jar包 2.配置applicationCont ...
- Mybatis学习笔记之---环境搭建与入门
Mybatis环境搭建与入门 (一)环境搭建 (1)第一步:创建maven工程并导入jar包 <dependencies> <dependency> <groupId&g ...
- 【Django学习笔记】-环境搭建
对于初学django新手,根据以下步骤可以快速进行Django环境搭建 虚拟环境创建 使用virtualenv创建并启用虚拟机环境 ,关于virtualenv可参考https://www.yuque. ...
- go 学习笔记之环境搭建
千里之行始于足下,开始 Go 语言学习之旅前,首先要搭建好本地开发环境,然后就可以放心大胆瞎折腾了. Go 的环境安装和其他语言安装没什么特别注意之处,下载安装包下一步下一步直到完成,可能唯一需要注意 ...
随机推荐
- vector成员函数解析
vector线性集装箱,其元素颜格排序根据线性序列,和动态数组很阶段似,像阵列,它的元素被存储在连续的存储空间,这也意味着,我们不仅能够使用迭代器(iterator)访问元素,也可以用一个指针访问偏移 ...
- Linux环境下搭建php开发环境的操作步骤
本文主要记载了通过编译方式进行软件/开发环境的安装过程,其他安装方式忽略! 文章背景: 因为php和Apache等采用编译安装方式进行安装,然而编译安装方式,需要c,c++编译环境, 通过apt方式安 ...
- EF分页问题探讨之 OrderBy
EntityFramework 应用场景 最近被应用程序中页面加载慢的问题所折磨,看似容易的问题,其实并不容易(已经持续两天时间了),经过“侦查”,发现了两个“嫌疑犯”: EntityFramewor ...
- 查看mysql状态常用命令
最近服务器上mysql有些奇奇怪怪的问题,可惜我不是专业的dba,为了加深自己对mysql的了解,先从基础的查看mysql状态命令看起吧. 命令: show status; 命令: show stat ...
- UML基础概念
UML概述 uml简介 uml(unified Modeling Language )为面向对象软件设计提供统一的.标准的.可视化的建模语言.适用于描述以用例为驱动,以体系结构为中心的软件设计的全过程 ...
- PLAN : 入门题目 ( update )
更新后 step 1 : A07, A11, A12,A14,A15,A18,A22,A24,A25,A26 A27,A29,A31,A32,A34,A59,A66,A69,A84,B24 B45,B ...
- Dynamics CRM 2013 体验
CRM 2013终于可以下载了,赶紧下载安装. 在CRM 2011 的基础上,CRM 2013 在UI上有了很大的变化.从CRM 2011 RollUp 12开始,微软就放弃了按钮的立体效果,逐渐趋向 ...
- [原]逆向iOS SDK -- “添加本地通知”的流程分析
观点: 代码面前没有秘密 添加通知的 Demo 代码 - (void)scheduleOneLocalNotification { [[UIApplication sharedApplication] ...
- 【转】CSS中position属性( absolute | relative | static | fixed )详解
我们先来看看CSS3 Api中对position属性的相关定义: static:无特殊定位,对象遵循正常文档流.top,right,bottom,left等属性不会被应用. relative:对象遵循 ...
- JS二维数据处理逻辑封装探究
一.目的 定义出一个专门用于处理二维数据的组件,所谓二维数据就是能用二维表格显示出来的数据,所谓处理就是增删改查,很简单. 二.约束 外部程序给该组件传入如下形式的对象,让该组件自行解析. var t ...