前段时间买了套Arduino UNO的套件来玩玩,对于像我这种做软件的来说,这种封装好的硬件正合适。用来做些有趣的小玩意那还是不错的。
1.起因
Arduino UNO 本身不支持网络功能,跟电脑通信只能通过串口,这样的话用Arduino做出来的东西都是死的。网上找Arduino联网的模块发现了 ESP8266 于是买了一个 8块多,一元硬币大小。
2.模块接线
usb转tll我的是下面这种
ESP8266与转接器接线
- ESP8266模块供电是 3.3 v所以黄色排针链接VCC和3V3
- 转接器5V连接模块3V3
- 转接器GND连接模块GND
- 转接器TXD连接模块RXD
- 转接器RXD连接模块TXD
- 模块EN(CH_PD)接VCC ( 接高电平时:工作,接低电平时:休眠 )
- (烧录时才链接此线) GPIO0接GND
3.模块使用
AT指令
模块出场时已经时AT指令的固件了
ESP8266使用AT指令开发示例
AT指令集下载
ArduinoIDE开发
1.在IDE的文件->首选项下添加开发板管理网址(我是1.8.4版本)
http://arduino.esp8266.com/versions/2.4.1/package_esp8266com_index.json
2. 重启IDE在 工具->开发板->开发板管理器 下找到esp8266并安装
3. 重启IDE在 工具->开发板 下就会出现如下开发版 esp8266-01s选择esp8266module下的第一项就行
- 接下来就可以用ArduinoIDE开发ESP8266模块了
4.点亮led(GPIO2)
esp8266-01s本身就是一个mcu可以利用GPIO2来做一些简单的控制。
注意GPIO2在模块启动的时候是不能下拉的,所以led的正极要接VCC负极接GPIO2
GPIO2可以用来控制低电平有效的继电器。
int ledPin = 2;
void setup() {
pinMode(ledPin, OUTPUT);
}
void loop() {
//开灯
digitalWrite(ledPin, LOW);
delay(1000);
//关灯
digitalWrite(ledPin, HIGH);
delay(2000);
}
上传之后就可以看到模块上 vcc和GPIO之间的led 在闪烁了