ESP8266是国产的WIFI SOC,而且宣传是业界里程碑,没有理由不支持,虽然瑞昱的RTL8710的性能和稳定性都比ESP8266要强,这点我们没必要不承认,瑞昱是老牌的芯片制造厂商了,芯片制造水平很老油条了,某些方便势必要比新兴的公司强不少,但是这并不重要,慢慢来。我使用的是这种最便宜的使用AT指令集控制的模块:
该模块的引脚的分布分别是:
引脚的定义如下表:
PIN | Function | Description |
1 | URXD | 1)UART_RXD,接收; 2)General Purpose Input/Output:GPIO3; |
2 | UTXD | 1)UART_TXD,发送; 2)General Purpose Input/Output:GPIO1; 3)开机时禁止下拉; |
5 | RESET(GPIO 16) | 外部Reset信号,低电平复位,高电平工作(默认高); |
6 | GND | GND |
8 | VCC | 3.3V,模块供电; |
9 | ANT | WiFi Antenna |
11 | GPIO0 | 1)默认WiFi Status:WiFi工作状态指示灯控制信号; 2)工作模式选择: 上拉:Flash Boot,工作模式; 下拉:UART Download,下载模式; |
12 | ADC | ADC,输入范围:0V-1V; |
13 | GPIO15 | 下拉:工作模式; |
14 | CH_PD | 1)高电平工作; 2)低电平模块供电关掉; |
15 | GPIO2 | 1)开机上电时必须为高电平,禁止硬件下拉; 2)内部默认已拉高 |
注意系统启动的时候如果GPIO0是低电平的话表示是处于Uart下载模式,就和STM32的BOOT0引脚相似,CH_PD是芯片的使能引脚,低功耗应用中用这个脚控制模块的工作和断电。
模块的硬件连接参考图如下:
上图只是一个参考连接
,可以不需要电池供电,芯片本省使用的是3.3V供电
,使用RT9193稳压芯片将USB转TTL模块的5V稳压到3.3V后供模块使用。需要
注意的是ESP8266的耗电量很大,这其实是WIFI的耗电量大,至少要提供300mA的电源才能正常使用,而且不要和其他MCU使用同一个电源,严重的话其他的MCU会掉电。我在电路上焊接了两个按键,一个是RST和地连接的按键,一个是GPIO0和地连接的按键,方便进行复位和串口下载。开机时GPIO2需要是上拉的状态,所以不能接到地,可以悬空,因为内部已经上拉了。整体的电路图如下: