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 的环境安装和其他语言安装没什么特别注意之处,下载安装包下一步下一步直到完成,可能唯一需要注意 ...
随机推荐
- UVA10537 Toll! Revisited
difkstra + 路径输出 The Toll! Revisited Time Limit: 3000MS Memory Limit: Unknown 64bit IO Format: %lld & ...
- 小贴士——提高PHP程序在NGINX代理服务器的性能
NGINX本身就是面向最大性能的代理服务器,因此在使用NGINX,并没有性能调整的配置工作.但是却有很多选项可用于定制NGINX的行为,利用底层硬件和操作系统. 下面将介绍用于提供PHP在NGINX的 ...
- 在项目管理工具Redmine中使用SubVersion进行版本管理
原文:在项目管理工具Redmine中使用SubVersion进行版本管理 在项目管理工具Redmine中使用SubVersion进行版本管理 分类: Redmine2009-06-01 10:11 5 ...
- JCronTab 定时调用
习惯使用 unix/linux 的开发者应该对 crontab 都不陌生.Crontab 是一个很方便的用于 unix/linux 系统的任务调度命令.JCronTab 则是一款全然依照 cronta ...
- Newtonsoft.Json 将C#对象转化为json格式
object To json public static string ObjectToJson(object obj) { JsonSerializerSettings jss = new Json ...
- NET实现仓库看板的一些感想
NET实现仓库看板的一些感想 从一名技术开发人员到实施人员的蜕变,从不同的角度看待同一个问题,或许会有不一样的结果.这里记录一下最近一个项目实施的案例,非常有感触! 一. 项目情况简介 本次项目是给一 ...
- ASP.NET中页面传值
一.目前在ASP.NET中页面传值共有这么几种方式: 1.表单提交, <form action= "target.aspx" method = "post&q ...
- 【javascript】判断浏览设备是手机还是电脑
判断页面浏览设备是手机还是电脑,代码如下: function browserRedirect() { var sUserAgent = navigator.userAgent.toLowerCase( ...
- 7月22日-奇舞团关于when.js与promise的分享
关于when.js的使用见屈屈的分享 http://www.imququ.com/post/promises-when-js.html 关于promise的实现见月影的分享 http://www.wu ...
- GEF-whole-upload教程中遇到的问题及解决方案
最近在学习GEF开发,使用的是GEF-whole-upload这个教程.由于教程当时所使用的版本与本人使用的版本有一些差异,中间出现了不少问题,现在将解决方案分享给大家. 本人使用的Eclipse版本 ...