基于arduino通过AT指令配置和使用WIFI模块
模块详细资料网址:
链接:https://pan.baidu.com/s/1XXw_SEheLjHsdAqpLIUHXQ 密码:ptmr
注意:CH_PD引脚需要提供高电平。也相当于模块的开关,低电平模块供电就会关闭。
注意:CH_PD引脚需要提供高电平。也相当于模块的开关,低电平模块供电就会关闭。
GPIO0在下载时需要提供低电平,正常工作模式需要将其悬空。
GPIO0在下载时需要提供低电平,正常工作模式需要将其悬空。
第一步需要根据引脚布局图,搭建最小系统。
第一步需要根据引脚布局图,搭建最小系统。
烧固件硬件接线(下载模式):
wifi模块 Arduino
VCC 5V
GND GND
URXD TXD1
UTXD RXD1
CH_PD 5V
GPIO0 GND
正常工作模式硬件接线:
wifi模块 Arduino
VCC 5V
GND GND
URXD TXD1
UTXD RXD1
CH_PD 5V
程序:
String comdata = "";//定义字符串
#define LED1 31 //红色
void setup() {
Serial.begin(115200);//设置波特率,由于wifi模块默认波特率为11520
while (!Serial){
; }
pinMode(LED1, OUTPUT);
Serial1.begin(115200);
delay(500);
Serial1.println("AT");//测试指令,返回OK
delay(500);
Serial1.println("AT+CWMODE=2");//设置AT模式注意:首先需要设置为
AT模式
delay(500);
Serial1.println("AT+CIPSTART=\"UDP\",\"255.255.255.255\",999,999"
);//设置建立UDP连接,远程服务器IP地址,远程服务器端口号。。
delay(500);
Serial1.println("AT+CWSAP=\"ESP12355\",\"0123456789\",11,4");//
设置wifi名称,wifi密码,通道号,安全强度
delay(500);
Serial1.println("AT+CIPMODE=1");//设置为透传模式
delay(500);
digitalWrite(LED1, HIGH);
}
void loop() {
while (Serial1.available() > 0)
{
comdata += char(Serial1.read());
delay(2);
}
if (comdata.length() > 0)
{
Serial.println(comdata);
}
if(comdata=="红灯亮"){
digitalWrite(LED1, LOW);
delay(500);
}
comdata = "";
}