前段时间在淘宝随便搜搜“wifi模块”,竟然眼前一亮发现有一款价格在15元内的wifi模块:ESP8266。
对其简单的了解:
- 体积小巧,且多种封装,没有一个硬币大。
- 价格便宜,十几块钱在wifi模块里面算是最便宜的了。
- 提供AT指令,这样就可以使用arduino进行控制,实现互联网数据交互。
- 提供SDK包、烧固件工具,串口烧写固件。这样把arduino作为主控的功能都省了,直接把逻辑写进代码,烧到固件里,就能按我们的业务执行了。
- 有GPIO口,有SPI功能,有I2C功能,有UART功能,有ADC功能(0-1V输入),有了这些功能,很多感应器的应用都没问题了。
- 有一个固件包,叫nodemcu,简单的看了一下,就是打包了lua到固件里,这样允许我们使用lua这种比较容易入门的语言来开发,几行代码就能实现读取数据然后上传到互联网。
上图,多种封装格式,图片是在其淘宝上截图的,我自己没买这么多。
我自己买了esp-07型号,15元带有一个pcb空板,能引出所有IO口,方便diy。本身的封装略小,不利于DIY。
自己用烙铁焊接一下,买了2块,其中一个好像弄坏了,原因想了很久,也许是电烙铁温度过高,我调到350度,但是后来查文档说不要高于280度,或者pcb板子后面预留了一个3.3v稳压的盘口,我就自己给它焊上了一颗asm1117 3.3v的原件。
所以在第二天焊接第二块的时候,使用了低温,且不焊接稳压管的情况下,模块正常了。
焊接完后的样子。
接线上电,连接串口到电脑进行调试:
如下图,
-
左边连接3个io口到电源正极,电源我选用的是2节5号干电池,不过用了一段时间后,发现电池不够用了,就换arduino的3.3V输出作为电源。
-
右边蓝色的线,连接15号io口和GND到电池负极。
-
然后就是连接串口线到电脑了。中间还需要一块叫usb转串口的模块连接。
上电后,打开wifi,会发现多了一个名字“AI-ThinkerXXXXX”的AP名字,这样起码证明模块成功运行了。
用串口调试工具打开,输入最简单的命令“AT",模块回复”OK"。good,模块正常运行了。
接着我又测试了连接到家里的路由器,成功!
接着我又在电脑建了个tcp server,用模块连接,成功!
接着我又在GPIO12口处插了个LED灯,通过AT命令让它亮和灭,成功!
接着我又下载了SDK,在原有的AT固件里,增加了一个hello lixin 的命令,编译烧写运行,成功。
好了,到此为止,还是对这个模块感觉不错的。