【嵌入式硬件Esp32】ESP32学习之在windows下搭建eclipse开发环境
一、所需工具
由于项目要用ESP32模块进行开发,折腾了下集成开发环境,现将过程记录下来,以便需要的人使用。其中需要的有交叉编译工具,esp-idf示例代码以及C/C++版的eclipse。
- 交叉编译工具MSYS32:https://dl.espressif.com/dl/esp32_win32_msys2_environment_and_toolchain-20180110.zip
- 示例代码esp-idf:https://github.com/espressif/esp-idf.git
- C/C++版的eclipse:https://www.eclipse.org/downloads/packages/eclipse-ide-cc-developers/keplersr2
二、搭建步骤
首先下载交叉编译工具MSYS32,我这里下载后的压缩包为“esp32_win32_msys2_environment_and_toolchain-20180110.zip”,解压缩得到文件夹“msy32”,双击打开文件夹里的“msys2.exe”,该工具和可以使用Linux命令,进入到你要放置esp-idf示例的文件夹,
使用命令:git clone --recursive https://github.com/espressif/esp-idf.git
获取esp-idf示例代码。如下图所示:
进入msys32的配置文件夹,
我的是“D:\ESP32\msys32\etc\profile.d”,创建文件“export_idf_path.sh”,并输入内容“export IDF_PATH=”D:\ESP32\esp\esp-idf””。
该步骤是将配置esp-idf工作路径。
打开文件夹“msys32”下的“mingw32.exe”,
使用命令cp -r ./esp-idf/examples/get-started/hello_world .,将示例例程“hello_world”复制到当前文件夹。
进入“hello_world”文件夹,使用命令make menuconfig
等待进入配置界面
配置和ESP32开发版连接的串口
配置好了之后,使用make命令编译hello_world项目,首次编译较慢,需要耐心等待。
编译好了之后可以直接使用make flash命令进行烧写。之所以进行上面编译和烧写命令,是为了验证所下载的示例没有问题,也可以使用mingw32.exe工具进行开发,但是不美观。下面介绍使用eclipse进行开发。
下载C/C++版的eclipse(https://www.eclipse.org/downloads/packages/eclipse-ide-cc-developers/keplersr2)
下载完之后解压缩,得到eclipse,打开eclipse,导入hello_world项目。
配置编译环境
重复上述步骤,添加变量V,值为1
编辑PATH变量,添加“D:\ESP32\msys32\usr\bin”,“D:\ESP32\msys32\mingw32\bin”和“D:\ESP32\msys32\opt\xtensa-esp32-elf\bin”
指定编译命令:bash ${IDF_PATH}/tools/windows/eclipse_make.sh
配置编译工具
到此,交叉编译工具已经配置好了,但是还不能编译hello_world项目,还需将必要的头文件加入到项目中。
- ${IDF_PATH}/components/esp32/include
- ${IDF_PATH}/components/newlib/include
- ${IDF_PATH}/components/freertos/include
- ${IDF_PATH}/components/nvs_flash/include
- ${IDF_PATH}/components/driver/include
- ${IDF_PATH}/components/log/include
- ${IDF_PATH}/components/spi_flash/include
此时在eclipse中的配置已经好了,但是编译可能还会出错,需要关闭eclipse,打开“mingw32.exe”并进入到hello_world项目文件夹,使用命令make menuconfig进行配置。
配置好了之后,再次打开eclipse编译hello_world项目,发现此时可以编译了。
编译好了之后可以烧写了
至此完成!
【嵌入式硬件Esp32】ESP32学习之在windows下搭建eclipse开发环境的更多相关文章
- [转载]在Windows下搭建Android开发环境
http://jingyan.baidu.com/article/bea41d437a41b6b4c51be6c1.html 在Windows下搭建Android开发环境 | 浏览:30780 | 更 ...
- Windows下搭建Git开发环境
Windows下搭建Git开发环境主要有以下三种方法: 1,VS,vs2013和vs2015中已经集成了git插件了 2,msysGit+TortoiseGit 3,msysGit+SourceTre ...
- [转]MonkeyRunner在Windows下的Eclipse开发环境搭建步骤(兼解决网上Jython配置出错的问题)
MonkeyRunner在Windows下的Eclipse开发环境搭建步骤(兼解决网上Jython配置出错的问题) 网上有一篇shangdong_chu网友写的文章介绍如何在Eclipse上配置M ...
- 【原创】windows下搭建vue开发环境+IIS部署
[原创]win10下搭建vue开发环境 如果要转发,请注明原作者和原产地,谢谢! 特别说明:下面任何命令都是在windows的命令行工具下进行输入,打开命令行工具的快捷方式如下图: 详细的安 ...
- windows下搭建vue开发环境+IIS部署
原创]win10下搭建vue开发环境 https://www.cnblogs.com/ixxonline/p/6007885.html 特别说明:下面任何命令都是在windows的命令行工具下进行输 ...
- Windows下搭建PHP开发环境
PHP集成开发环境有很多,如XAMPP.AppServ......只要一键安装就把PHP环境给搭建好了.但这种安装方式不够灵活,软件的自由组合不方便,同时也不利于学习.所以我还是喜欢手工搭建PHP开发 ...
- (一)Windows下搭建PHP开发环境及相关注意事项
PHP集成开发环境有很多,如XAMPP.AppServ......只要一键安装就把PHP环境给搭建好了.但这种安装方式不够灵活,软件的自由组合不方便,同时也不利于学习.所以我还是喜欢手工搭建PHP开发 ...
- [转]Windows下搭建PHP开发环境
原文:http://www.cnblogs.com/pharen/archive/2012/02/06/2340628.html PHP集成开发环境有很多,如XAMPP.AppServ......只要 ...
- Windows下搭建PHP开发环境-WEB服务器
PHP集成开发环境有很多,如XAMPP.AppServ......只要一键安装就把PHP环境给搭建好了.但这种安装方式不够灵活,软件的自由组合不方便,同时也不利于学习.所以我还是喜欢手工搭建PHP开发 ...
随机推荐
- hive 的 beeline用法
先开启服务端: nohup hive --service metastore & nohup hive --service hiveserver2 & 进入beeline: beel ...
- simcom7600ce-t LBS function
Welcome to minicom 2.7 OPTIONS: I18n Compiled on Nov 15 2018, 20:20:38.Port /dev/ttyUSB2, 00:55:23 P ...
- luogu 1144
最短路计数 #include <bits/stdc++.h> using namespace std; , M = 2e6 + ; << ); #define gc getch ...
- 小象和老鼠 DP
小象和老鼠 DP \(N*M\)的网格图,格子\((i,j)\)有\(A_{i,j}\)个老鼠,问小象从左上角\((1,1)\)走到右下角\((N,M)\)看到的最少老鼠.小象可以看见老鼠,当且仅当老 ...
- [转][c++11]我理解的右值引用、移动语义和完美转发
c++中引入了右值引用和移动语义,可以避免无谓的复制,提高程序性能.有点难理解,于是花时间整理一下自己的理解. 左值.右值 C++中所有的值都必然属于左值.右值二者之一.左值是指表达式结束后依然存在的 ...
- 【原创】go语言学习(八)切片
目录: 切片定义 切片基本操作 切片传参 make和new的区别 切片定义 1. 切片是基于数组类型做的一层封装.它非常灵活,可以自动扩容. var a []int //定义一个int类型的空切⽚ 2 ...
- serviceWorker
推荐阅读:Service Worker 简介 在 Service Worker 之前,我们一般用 AppCache 来实现离线体验(就是配置 Manifest 文件的方式),这个会有很多问题(博主曾尝 ...
- 常见的HTTP方法有哪些?
GET:请求指定的页面信息,返回实体主体: HEAD:类似于get请求,只不过返回的响应中没有具体的内容,用于捕获报头: POST:向指定资源提交数据进行处理请求(比如表单提交或者上传文件),.数据被 ...
- java设计模式学习-单例模式
java中单例模式定义:“一个类有且仅有一个实例,并且自行实例化向整个系统提供.”单例模式可以保证一个应用中有且只有一个实例,避免了资源的浪费和多个实例多次调用导致出错. 单例模式有以下特点: 1.单 ...
- Freestream边界条件【翻译】
翻译自:CFD-online 帖子地址:http://www.cfd-online.com/Forums/openfoam-solving/93093-freestream-boundary-cond ...