文档章节

ESP8266开发课堂 - 开发环境搭建

e
 espush
发布于 2016/06/28 11:16
字数 1187
阅读 311
收藏 2

#下载IDE集成开发环境

与通常做嵌入式如51、stm8s、stm32所使用的Keil MDK不同的是,Espressif提供的Open SDK基于gcc工具链,所以蘑菇云ESP8266开发课堂所使用的集成开发环境是Eclipse与其CDT插件,有过Java或Linux C开发经验的童鞋们应该会非常熟悉。同时IDE集成了Cygwin作为辅助编译系统,喜欢Linux Shell的朋友可以使用Cygwin作为编译开发环境。

如下地址下载: http://pan.baidu.com/s/1b2fAsI

下载后解压得到如下图所示的文件,双击IDE.bat(初始化环境变量所用,无毒,直接启动eclipse文件夹下的eclipse.exe会导致无法编译)启动。

ESP8266 蘑菇云 IDE编程环境

首先配置工作目录,此处使用 D:\Documents\Workspace,使用你自己机器的文件夹替代,并选中 默认配置项 后,点击OK。

ESP8266 蘑菇云 IDE编程环境

关闭Welcome欢迎对话框,打开Project Explorer浏览子窗口。

ESP8266 蘑菇云 IDE编程环境 Eclipse 欢迎窗口

最后,下图就是我们的日常开发区了,Eclipse是开源社区(可能是)最好的开发工具了,不熟悉的童鞋们可以多花点时间了解下你手头的工具,磨刀不误砍柴工嘛。

ESP8266 蘑菇云 IDE编程环境 Eclipse 系统界面

#导入示例项目

每个嵌入式开发教程的Hello world都是点亮LED,但由于蘑菇云开发板的彩灯默认情况下太亮,所以我们第一课的内容将是霸气的“熄灭LED”。

按下图所示,在Project explorer内单击右键,选择Import,如下图:

ESP8266 蘑菇云 IDE编程环境 Eclipse 导入项目

在接下来弹出的Import 对话框中,选择C/C++ => Existing Code as Makefile Project,点击Next,如下图:

ESP8266 蘑菇云 IDE编程环境 Eclipse 导入项目

依序选择示例工程文件夹,填入对应项目名称,此处以PROJ01_LED为例,下面的工具链选择区域,选中 Cygwin GCC,点击完成。项目就导入完成了,具体代码含义的讲解将在下一篇阐述,这里主要完成开发环境搭建、项目管理等,接下来让我们编译项目,并运行之。

ESP8266 蘑菇云 IDE编程环境 Eclipse 导入项目

#固件清理与编译

在项目上右键,选择Clean Project清理项目之前编译过的临时文件,然后再次右键,选择Build Project即可。

ESP8266 蘑菇云 IDE编程环境 Eclipse 项目编译方法

Clean 项目,屏幕下方,切换到Console终端窗口,可以看到终端窗口输出的清理日志,最终显示Build Finished。

ESP8266 蘑菇云 IDE编程环境 Eclipse Build Finished

同样,Build 项目时,会弹出Build Project对话框,可点击Run in Background,对应Console控制台窗口会输出编译日志。

ESP8266 蘑菇云 IDE编程环境 Eclipse 项目编译

编译完成,成功输出Build Finished。留意其最终输出的文本中,提示最终文件已生成于bin目录,并指出最终编译文件烧录对应的偏移地址,我们将其记录下来,后面刷写固件时会用上。

ESP8266 蘑菇云 IDE编程环境 Eclipse 项目编译

成功编译出的固件文件:

ESP8266 蘑菇云 IDE编程环境 Eclipse 项目编译

#固件刷写及运行

将开发板接入你的机器,在安装好驱动后,系统设备管理区将能看到可用的串口号,蘑菇云开发板使用了CH340为串口芯片,如下图所示,如果你有多个串口,需要选择正确的串口号烧录。

ESP8266 ESPUSH 蘑菇云 IDE编程环境 固件烧录与运行

将开发板的烧录拨码开关打到GND位置,如下图所示,并按下左侧的按钮,板载的圆形彩灯将会亮起至最大亮度,表明已进入固件烧录下载模式。

ESP8266 ESPUSH 蘑菇云 IDE编程环境 固件烧录与运行

打开乐鑫原厂烧录工具,按下图所选择的设置进行(选择正确的固件文件,并在右侧填入对应的固件偏移地址,以编译后提示的为准),选择正确的串口号,此处为COM3,点击Start开始烧录,会最终提示烧录完成。

ESP8266 ESPUSH 蘑菇云 IDE编程环境 固件烧录与运行

完成时的工具截图:

ESP8266 ESPUSH 蘑菇云 IDE编程环境 固件烧录与运行

烧录成功结束后,将拨码开关重新打回运行状态对应的位置,并按下左侧的RESET复位按钮,你会看到下图,不会再有亮瞎眼的灯了。

ESP8266 ESPUSH 蘑菇云 IDE编程环境 固件烧录与运行

#使用Cygwin编译项目

如果你对命令行钟爱有加,可以使用IDE环境所附带的Cygwin来进行编译开发,双击Cygwin目录的对应bat文件,启动CLI环境。另外,这里的Cygwin环境直接使用了深圳安信可公司的IDE v2.0中的Xtensa编译工具链。

ESP8266 ESPUSH 蘑菇云 IDE编程环境 使用Cygwin编译项目

启动后即如下图所示,提示你处于~目录下,如果需要编译,请使用df命令查知你对应机器的各盘根目录,并cd到对应位置。

ESP8266 ESPUSH 蘑菇云 IDE编程环境 使用Cygwin编译项目

执行make clean && make 即可一次性完成清理与编译工作,并输出与Eclipse控制台同样的内容,事实上Eclipse也只是调用了此处的Make命令而已。

ESP8266 ESPUSH 蘑菇云 IDE编程环境 使用Cygwin编译项目

更多教程,请加Q群:480288089

© 著作权归作者所有

共有 人打赏支持
e
粉丝 1
博文 1
码字总数 1187
作品 0
顺德
加载中

评论(1)

e
espush
不得不说,这Markdown 编辑器真爽!
ESP8266在Alios-Things上的入门开发指南 (一)开发环境搭建及HelloWorld固件

一、 开发环境搭建 目前国内大多数开发者使用的都是WinXP/Win7/Windows XX做MCU的开发。习惯Windows环境开发的朋友,如果一旦一接触到MCU需要是Linux环境来进行开发编译,第一反应理所应当是“...

行者武松
06/12
0
0
Esp8266学习之旅① 搭建开发环境,开始一个“hellow world”串口打印。

欢迎来到物联网智能家居顶量级别wifi模块Esp8266学习之旅。 本系列博客学习由非官方人员 半颗心脏 潜心所力所写,仅仅做个人技术交流分享,不做任何商业用途。如有不对之处,请留言,本人及时...

xh870189248
2017/09/14
0
0
ESP8266笔记汇总

一、前言 2015年开始,随着ESP8266的横空出现,WiFi SoC大幅降价,市场模组价格一下被拉到了10元档。WiFi由于可直接入网的,在智能家居等行业中成为了应用最广泛的物联网技术。本尊贵为物联网...

iotisan
2017/02/03
0
0
玩转 ESP8266 Arduino 笔记01 开发环境搭建

前言 废话不多说,环境先搞起来。 更多笔记信息,请查看由IoT小能手编写的手把手玩转ESP8266 Aruidno 一、总体思路 开发环境的搭建总体是参考ESP8266的官方说明,具体见这里:https://githu...

iotisan
2017/12/10
0
0
Esp8266学习之旅③ 利用 " 软件定时器 " 定时0.5秒闪烁点亮一盏LED。(附带demo)

欢迎来到物联网智能家居顶量级别wifi模块Esp8266学习之旅。 本系列博客学习由非官方人员 半颗心脏 潜心所力所写,仅仅做个人技术交流分享,不做任何商业用途。如有不对之处,请留言,本人及时...

xh870189248
2017/10/03
0
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

RabbitMQ在CentOS环境安装

1.废话不多说准备一台虚拟机,系统为centos,我这里使用的系统版本如下图所示:

凌晨一点
42分钟前
0
0
线程池相关

在java.util.concurrent包下,提供了一系列与线程池相关的类。 使用线程池的好处 降低资源消耗。通过重复利用已创建的线程降低线程创建和销毁造成的消耗; 提高响应速度。当任务到达时,任务...

edwardGe
44分钟前
0
0
学习大数据这三个关键技术是一定要掌握!

大数据时代全面来临,大数据、人工智能等技术引领科技创新潮流,获得国家政策大力支持,前景广阔。学习大数据技术的人自然是络绎不绝, 学习大数据虽然是一个趋势,但也要注意大数据培训课程...

董黎明
今天
0
0
jetbrains 上传代码到github

设置中找github 获取token 验证是否成功 测试git 生成key,一路回车即可 ssh-keygen -t rsa -C “youremail@example.com” 打开pub复制key,需要再次输入一次密码 验证是否成功,输入yes即可...

阿豪boy
今天
0
0
分布式服务框架(拾遗)

前言 现在的大部分工程都已经是基于分布式架构来处理。所以这里对分布式框架做一个简单的总结 常用的RPC框架 RPC框架原理 RPC(Remote Procedure Call,远程过程调用)一般用来实现部署在不同...

kukudeku
今天
3
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部