ESP8266是一款物联网WiFi芯片,基于ESP8266可以开发物联网串口WiFi模块,像SKYLAB的WG219/WG229专为移动设备和物联网应用设计,可将用户的物理设备连接到WiFi无线网络上,进行互联网或局域网通信,实现联网功能。另外WG219/WG229仅需要通过出串口使用AT指令控制,就能满足大部分的网络功能需求。
ESP32模块是ESP8266的升级版本。除了Wi-Fi模块,该模块还包含蓝牙4.0模块。双核CPU工作频率为80至240 MHz,包含两个Wi-Fi和蓝牙模块以及各种输入和输出引脚, ESP32是物联网项目的理想选择。
ESP32-CAM是安信可最新发布小尺寸的摄像头模组。该模块可以作为最小系统独立工作,尺寸仅为2740.54.5mm,深度睡眠电流最低达到6mA。
ESP32-CAM可广泛应用于各种物联网场合,适用于家庭智能设备、工业无线控制、无线监控、QR无线识别,无线定位系统信号以及其它物联网应用,是物联网应用的理想解决方案。ESP32-CAM采用DIP封装,直接插上底板即可使用,实现产品的快速生产,为客户提供高可靠性的连接方式,方便应用于各种物联网硬件终端场合。
ESP8266
学习ESP8266主要是通过 B站太极创客
蓝底白字:GPIO:通用输入输出(ESP8266芯片上的引脚命名)
ADC:模拟引脚
3V3,GND
VIN:为nodemcu供电
nodemcu供电方式:数据线/VIN
数字引脚电压:3.3V
数字引脚所能连接的电压不能超过3.3V
1 2 3
| 数字引脚 digitalWrite:给引脚写电平 digitalRead:读引脚电平
|
模拟引脚可读取的电压范围:0-1V
蓝底黑字:通讯类型的引脚,通讯方式:串口通讯,SPI通讯,I2C通讯;
串口通信引脚:
- U0TXD:
- U0RXD:
- U1TXD
- U1RXD
黑底白字:操作存储单元的引脚
按键RST:
按键:FLASH:刷固件的时候要用
TCP/IP协议
ESP8266通过WiFi联网时有三种工作模式
1 2 3 4 5
| - 接入点模式access point
- 无线终端模式wireless Station
- 混合模式
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
| #include <ESP8266WiFi.h>
const char *ssid = "Murphy"; const char *password = "0928";
void setup(){ Serial.begin(9600); WiFi.softAP(ssid,password);
Serial.print("Access Point:"); Serial.println(ssid); Serial.print("IP address:"); Serial.println(WiFi.softAPIP()); }
void loop(){ }
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37
|
#include <ESP8266WiFi.h>
const char* ssid = "MERCURY"; const char* passwd = "11235813";
void setup(){ Serial.begin(9600);
WiFi.begin(ssid,passwd); Serial.print("Connect to:"); Serial.print(ssid); Serial.println("......");
int i = 0; while (WiFi.status() != WL_CONNECTED){ delay(1000); Serial.print(i++); Serial.println(' '); }
Serial.println(' ');
Serial.println("Connection established"); Serial.print("IP address:"); Serial.println(WiFi.localIP());
}
void loop(){ }
|
ESP32
ESP31CAM
LED1
RST按钮旁边有一个板载红色LED。该LED内部连接到GPIO 33。您可以使用此LED指示正在发生的事情。例如,如果连接了Wi-Fi,则LED为红色,反之亦然。
1 2 3 4 5 6 7 8 9
| void setup() { pinMode(33, OUTPUT); digitalWrite(33, LOW); }
void loop() {
}
|
FLASH LED
DATA1 /手电筒 GPIO 4
1 2 3 4 5 6 7 8 9
| void setup() { pinMode(4, OUTPUT); digitalWrite(4,LOW); }
void loop() { }
|