转Arduino IDE for ESP8266教程
ESP8266是现在性价比不错的Wifi模块,用了一块ESP8266-01之后感觉还行,用在数据采集器上表现还是不错的,后来看到官方出了SDK,可以用SDK修改模块的相关功能,还可以控制IO脚,在尝试了官方SDK后感觉上手略困难,没有文字教学(只有视频教学,习惯看文字教学的很苦恼,毕竟文字教学可以先大致浏览一下有什么API,相关测试代码,自己选择喜欢的功能把玩一遍之后再决定要不要入坑等等),源码没注释,烧写程序设置指示不清楚(一直没搞清楚那些hex文件对应的地址该怎么选择),基本没法快速入门。
之后找到了NodeMcu,NodeMcu是基于ESP8266-12E的一款硬件,编程语言使用lua脚本,不得不说这个比官方SDK好很多了,官网上有在线API手册以及示例源码,固件的烧写也很傻瓜,而且烧写完成之后,后续的编程完全不需要再进行烧写,全部都是在线将脚本写入并运行。在尝试了一些例程之后打算入坑,接着找了个DHT22的例程放进去,之后就傻眼了,读取数据基本就是得头几个是正确的,之后就直接错乱了,在测试了几个github上的程序都无解之后就放弃了……
最后以外的发现了Arduino IDE for ESP8266(Github:https://github.com/esp8266/Arduino),这个是基于Arduino的ESP8266的Broad库,对我来说至少能不通过太大的学习成本使用ESP8266也是件好事。在它的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里边包含有项目的地址)。(新版ESP8266 for Arduino IDE v2.3.0下载地址:http://pan.baidu.com/s/1mh50myG 建议配合Arduino IDE 1.8.3使用)
4、下载完成之后可以在开发板选项中看到ESP8266 Module,一般开发就是用Generic ESP8266 Module就行了其它的设置默认。有的板的Flash大小会有差别,具体可以查找板上的Flash芯片型号确定。如果找不到芯片型号可以用例程中的ESP8266->CheckFlashConfig来确定
这样子就算是配置完成了,由于本身就是直接烧写8266的Flash,所以并不需要烧写bootloader。
然后就可以测试示例代码了。
可以试试ESP8266WebServer下的AdvancedWebServer,这是一个Web服务器,可以显示由MCU构建的SVG图像,需要修改ssid和password变量为自家的wifi的参数,烧写方式和ESP8266普通的烧写方式是一样的,GPIO0拉低进入烧写模式,给板子复位过后选择下载程序,等下载完毕之后就可以运行了,其实这里有个bug,下载完成之后可以不用拉高GPIO0就会直接运行刚刚下载的程序了。
运行程序之后会打印8266的IP。
我们只需要用浏览器打开这个IP就可以看到8266输出的内容了。