物联网开发-如何让10钱成本的ESP8266模块支持Arduino编程

pdlinfo 2018-04-12

Hello,大家好,欢迎大家来到LIUSE网络。

说到智能家居,物联网开发,大家肯定都是耳熟能详了。现在主流的物联网方式大多都采用蓝牙,或者wifi来进行通讯。这里我们先简单提一下蓝牙跟wifi的优缺点:

物联网开发-如何让10钱成本的ESP8266模块支持Arduino编程

蓝牙:

优点:成本低、功耗低、点对点更方便

缺点:速度慢、信号接收距离有限

WIFI:

优点:速度快、一对多、信号强

缺点:功耗大、成本高

由上可见,物联网的设计中采用蓝牙跟采用WIFI没有绝对的好与不好之分,只有哪种方案更合适。今天呢我们就带领大家来玩一下ESP8266这个WIFI模块

首先我们来说一下这个模块的价格方面,这个模块在某宝上非常便宜,10块钱左右。而且呢模块已经做得特别的成熟,很适合开发者们上手。

物联网开发-如何让10钱成本的ESP8266模块支持Arduino编程

(某宝价格截图)

ESP8266三种模式:

1:STA 模式:ESP8266模块通过路由器连接互联网,手机或电脑通过互联网实现对设备的远程控制。

2:AP 模式:ESP8266模块作为热点,实现手机或电脑直接与模块通信,实现局域网无线控制。

3:STA+AP 模式:两种模式的共存模式,即可以通过互联网控制可实现无缝切换,方便操作。

但是呢,ESP8266官方给的文实在是少的可怜呐,而且官方的文档写的有有点类似阿三,初学者也不一定能看懂,那难道我们还能因为这点小困难就抛弃这个廉价的WIFI模块?

那本章节来介绍一下,如何让自己采购的ESP8266模块通过arduino IDE进行编程!

Arduino IDE for ESP8266(Github:https://github.com/esp8266/Arduino),这个是基于Arduino的ESP8266的Broad库。在Github项目页上有安装教程,利用了Arduino 1.6.5的新特性进行在线安装(1.6.4也有,但感觉不如1.6.5好用,github上是使用1.6.5进行配置的)。

1、打开Arduino,选择“首选项”,在“附加开发板管理器网址”中填入http://arduino.esp8266.com/stable/package_esp8266com_index.json,然后点击确定保存这个地址。

2、打开工具->开发板->开发板管理器

3、等待开发板管理器启动完成后,移动到开发板管理器的最下方,可以看到一个esp8266 by esp8266 Community,右下角有个选择版本,选好2.0.0之后点击安装,因为是连接到github上下载(国内可能会被墙,这是下载好的文件http://pan.baidu.com/s/1sjRFe6h,覆盖掉首选项里边那个配置文件的文件夹即可,比如我的路径是C:\Users\Administrator\AppData\Local\Arduino15\preferences.txt,那需要解压出来覆盖掉C:\Users\Administrator\AppData\Local\Arduino15这个文件夹,覆盖之后可能需要重新设定arduino库的地址,因为preferences.txt里边包含有项目的地址)。(现在Arduino IDE for ESP8266已经更新到2.3.0,这是2.3.0的Arduino15包的下载地址:http://pan.baidu.com/s/1mh50myG 建议配合Arduino IDE 1.8.3使用)

物联网开发-如何让10钱成本的ESP8266模块支持Arduino编程

安装Board支持包,安装完成后的样子,会显示2.0.0 INSTALLED

物联网开发-如何让10钱成本的ESP8266模块支持Arduino编程

首选项设置,在开发板管理器中(Addtional Boards Manager URLs)填入ESP8266的配置地址,红线中的是Arduino15存放的地点

4、下载完成之后可以在开发板选项中看到ESP8266 Module,一般开发就是用Generic ESP8266 Module就行了其它的设置默认。有的板的Flash大小会有差别,具体可以查找板上的Flash芯片型号确定。如果找不到芯片型号可以用例程中的ESP8266->CheckFlashConfig来确定,选择Flash大小小于板上Flash的大小就行,不确定可以先选择512k。

物联网开发-如何让10钱成本的ESP8266模块支持Arduino编程

这样子就算是配置完成了,由于本身就是直接烧写8266的Flash,所以并不需要烧写bootloader

然后就可以测试示例代码了。

当然这里你可以选择测试提供的实例,也可以将下面的测试wifi服务器代码复制上:

物联网开发-如何让10钱成本的ESP8266模块支持Arduino编程

(代码)

物联网开发-如何让10钱成本的ESP8266模块支持Arduino编程

通过手机连接上ESP8266,显示同一网段下,当然如果你要是有串口调试器,那样通过电脑去测试ESP8266的效率会更高。

当然,除此之外,可以试试ESP8266WebServer下的AdvancedWebServer,这是一个Web服务器,可以显示由MCU构建的SVG图像,需要修改ssid和password变量为自家的wifi的参数,烧写方式和ESP8266普通的烧写方式是一样的,GPIO0拉低进入烧写模式,给板子复位过后选择下载程序,等下载完毕之后就可以运行了,下载完成之后可以不用拉高GPIO0就会直接运行刚刚下载的程序了。

物联网开发-如何让10钱成本的ESP8266模块支持Arduino编程

相关推荐