最近手里没事,加上esp8266模块买来好长时间,还没有做过东西,只是拿来进行实验了。最近想做一个联网控制设备,就瞄上了插排,方便,简单,快捷,使用。
祝我好运!!!
之前一直在玩stm32系列单片机,后来需要联网,就上网查资料,看上了ESP8266这款芯片,就买了两个模块回来。试了一下,使用AT指令连接网络还算方便,可以和手机或者PC端软件直接连接,或者通过路由器接入到互联网。
从网上买了一块nodemcu的板子,回来试了一下lua的固件和MicroPython的固件,感觉脚本式开发挺方便的。在网上也可以找到一些写好的模块,可以拿来使用。
如何辨别ESP8266系列模组
言归正传,开始了解这款性价比较高的ESP8266,以下是几款ESP8266的模块:
推荐提前阅读如何辨别ESP8266系列模组
ESP8266或ESP8266的改良版引脚图:
我目前使用的是ESP12E模块,
具体可以从网上查找,这里不做详细说明。
ESP12产品说明
引脚功能表
序号 | Pin脚名称 | 功能 |
---|---|---|
1 | RST | 复位模块 |
2 | ADC | A/D转换结果。输入电压范围0-1V,10bit精度 |
3 | EN | 芯片是嗯那个端,高电平有效 |
4 | IO16 | GPIO16:接到RST管脚时,可以做唤醒引脚 |
5 | IO14 | GPIO14:HSPI_CLK |
6 | IO12 | GPIO12:HSPI_MISO |
7 | IO13 | APIO13:HSPI_MOSI, UART0_CTS |
8 | VCC | 3.3V供电 |
9 | CS0 | 片选引脚 |
10 | MISO | 从机输出主机输入 |
11 | IO9 | GPIO9 |
12 | IO10 | GBIO10 |
13 | MOSI | 主机输出从机输入 |
14 | SCLK | 时钟 |
15 | GND | GND |
16 | IO15 | GPIO15; MTDO; HSPICS; UART0_RTS |
17 | IO2 | GPIO2; UART1_TXD |
18 | IO0 | GPIO0 |
19 | IO4 | GPIO4 |
20 | IO5 | GPIO5 |
21 | RXD | UART0_RXD; GPIO3 |
22 | TXD | UART0_TXD; GPIO1 |
模式表
模式 | GPIO15 | GPIO0 | GPIO2 |
---|---|---|---|
UART下载模式 | LOW | LOW | LOW |
Flash Boot模式 | LOW | HIGH | HIGH |
资源情况
- 内置RAM,可用RAM为36K,可以外接SPI FALSH,建议1MB~16MB,此模块外接4MB的FALSH。
- HSPI功能
- PWM功能
- ADC功能,可以连接至VCC,检测供电电压
- IIC功能
- UART功能,由于UART1的RTD功能被其他功能占用,所以UART1只可以使用TXD功能,可以用于调试log打印
- IIS功能
ESP12E模块的下载固件方式
ESP模块通过串口方式下载固件,我使用的是FLASH_DOWNLOAD_TOOLS工具,可以直接下载ESP8266芯片的模块。
在第一行添加需要下载的固件文件,必须是二进制文件,即.bin文件,填写需要下载的地址。选择自己模块的信息,再选择com口和波特率,最后点击START就可以。
注意:下载之前需要按照按照UART下载方式启动
这是一个空的文件,可以用来擦除整个FLASH的信息