天天看點

ESP8266 使用 (1)—ESP8266硬體平台介紹

1、ESP8266 子產品

目前市面上有關ESP8266模組有很多的種類,但是都是使用的樂鑫公司開發的ESP8266的wifi模組,而且種類也很多。從網上搜尋就可以看到很多不同的種類,常見的有以下幾種:

1.1、D1 開發闆

D1 WiFi開發闆的設計上和Arduino UNO R3開發闆做到了相容,ESP8266的11個IO引腳也都在闆子預留出來,它的外形如下:

ESP8266 使用 (1)—ESP8266硬體平台介紹

1.2、Mini 開發闆

還有內建了序列槽自動下載下傳電路的更小尺寸的Mini版本,如下:

ESP8266 使用 (1)—ESP8266硬體平台介紹

1.3、NodeMcu開發闆

當然目前市面上最常見的就是NodeMcu開發闆了,它內建了序列槽自動下載下傳電路,IO也都通過排針引出,價格也不貴,算是很物美價廉的了。如下:

ESP8266 使用 (1)—ESP8266硬體平台介紹
ESP8266 使用 (1)—ESP8266硬體平台介紹

2、ESP8266到底是個啥?

ESP8266 是一款超低功耗的UART-WiFi 透傳子產品,具備 GPIO、I2C、ADC、SPI、PWM 等功能。總的來說,ESP8266 是一個高性能的無線SOC,它的内部內建有超低功耗的32位微型MCU(單片機),主頻支援80MHZ和160MHz,甚至能夠跑 RTOS。

它的特性如下:

1)主頻支援80MHz和160MHZ;

2)支援RTOS的使用;

3)160KB的SRAM(64KB IRAM + 96KB DRAM);

4)内置10bit高精度ADC;

5)内置TCP/IP協定棧;

6)支援AT遠端更新、雲端OTA更新;

7)支援STA、AP、STA+AP的工作模式;

8)支援Smart Config功能(包括Android和ISO裝置);

9)有IO引腳,支援HSPI、UART、I2C、I2S、PWM、GPIO等常用外設功能;

10)支援一鍵配網、SDK二次開發

3、NodeMcu 開發闆

目前市面上能夠見到ESP8266的NodeMcu開發闆,wifi模組都是使用的ESP8266,不同的地方就在于闆載上的usb轉TTL的晶片,常見的有:CH340、CP2102、CH9102等轉換晶片,最終實作的功能都一樣,就是轉換晶片不同而已。

它的闆載引腳名和ESP8266的晶片引腳編号對應如下圖:

ESP8266 使用 (1)—ESP8266硬體平台介紹

注意:要注意區分GPIO編号與NodeMCU開發闆引腳名的差別。差別如下:

1)GPIO編号指的是ESP8266晶片的引腳編号,如上圖所示的 “GPIO + 數字” 的方式來表示表示,共有GPIO0 - GPIO16。

2)引腳名指的是NodeMcu開發闆上的絲印文字,比如:D0、D1、A0…等這些 。

3.1、ESP8266的引腳功能表

GPIO 功能 電平狀态 備注
引導模式選擇 3.3V
1 TX0 / 序列槽0通訊(發送)
2

引導模式選擇

TX1

3.3V

啟動時不能接地,啟動時發送調試資訊;

序列槽1通訊(發送)

3 RX0 / 序列槽0通訊(接收)
4 SDA (I²C) / /
5 SCL (I²C) / /
6 - 11 連接配接閃存 / 最好不要做普通GPIO使用
12 MISO (SPI) / /
13 MOSI (SPI) / /
14 SCK (SPI) / /
15 SS (SPI) 0V 上拉電阻不可用
16 睡眠喚醒 / 無上拉電阻,僅有下拉電阻,連接配接 RST 引腳可實作睡眠喚醒

3.2、引腳使用中需要注意的地方

3.2.1、有效可用引腳

ESP8266晶片有17個GPIO引腳,它們分别是 GPIO0~GPIO16。在這些引腳中 GPIO6~GPIO11已經被用于連接配接開發闆的閃存(Flash Memory),如果項目中使用GPIO6~GPIO11的話,會導緻NodeMCU開發闆無法正常工作,是以建議不要使用GPIO6~GPIO11。

總而言之,出去用于連接配接閃存的引腳,實際可用的引腳就隻有11個。

3.2.2、引腳電壓電流

NodeMCU開發闆引腳所能承受的的輸入輸出電壓限制是3.3 V。如果向引腳施加超過3.3V以上的電壓就有可能對ESP8266晶片造成損壞。以此同時,這些引腳的最大輸出電流是12mA。

3.2.3、引腳的上下拉電阻

GPIO 0-15引腳都配有内置上拉電阻。GPIO16 引腳配有内置下拉電阻。

3.2.4、ADC模拟輸入

ESP8266 隻有一個模拟輸入引腳,該引腳可以将引腳上的模拟電壓數值轉化為數字量,并且此引腳可以讀取的模拟電壓值為 0 – 1.0V。

是以必須注意:ESP8266 晶片模拟輸入引腳連接配接在1.0V以上電壓可能損壞ESP8266晶片。

3.2.5、UART 串行通信端口

ESP8266 有兩組串行通信端口,分别如下:

1)串行端口0(UART0)使用GPIO1和GPIO3引腳。其中GPIO1引腳是TX0,GPIO3是RX0。

2)串行端口1(UART1)使用GPIO2和GPIO8引腳。其中GPIO2引腳是TX1,GPIO8是RX1。

特别注意:由于GPIO8被用于連接配接閃存晶片,是以RX1實際上不能再使用,串行端口1隻能使用GPIO2來向外發送串行資料。

ESP8266 使用 (1)—ESP8266硬體平台介紹

繼續閱讀