-
环境配置
第一次在Arduino IDE中使用esp8266需要进行环境配置:
为ESP8266安装Arduino IDE -
烧写程序(手机热点需要是打开状态)
#include#include #include const char *ssid = "iPhone";//自己热点或者wifi名称 const char *password = "11111111";//自己热点或者wifi密码 WiFiServer server(8888);//随便设置的数据 void setup() { Serial.begin(115200); Serial.printf("Connecting to %s ", ssid); WiFi.begin(ssid, password); while (WiFi.status() != WL_CONNECTED) { delay(500); Serial.print("."); } Serial.println(" connected"); server.begin(); Serial.printf("Web server started, open %s in a web browsern", WiFi.localIP().toString().c_str());//在串口中查看ip地址,这个后面要用到 } void loop() { server.begin(); while (WiFi.status() == WL_CONNECTED) { WiFiClient client = server.available(); //尝试建立客户对象 client.setTimeout(1); if (client) //如果当前有客户可用 { while (client.connected()) //如果客户端建立连接 { if (client.available()) //等待有可读数据 { String wifiClientData=client.readString();//电脑-->单片机 Serial.print(wifiClientData);//esp-->单片机 client.write("good"); } } } } }
- 电脑连接到热点或者wifi
- 打开网络调试助手进行电脑客户端和esp8266服务端的连接
款选部分进行设置,ip地址可以在arduino的串口监视器里查看,也可以通过电脑的ipconfig查看。如图为红色状态就是电脑端和esp8266连接成功了。
- 到这里esp部分的操作就完成了,可以断开esp和电脑之间的数据线,然后连接esp8266与Arduino了。
Esp8266--------arduino
3.3v--------------3.3v
GND-------------GND
TX----------------RX(软串口:13)
RX----------------TX(软串口:12)
这一部分主要是写代码
-
写代码之前需要把开发板设置成自己的Arduino板,COM端口也要进行设置
-
代码:
void setup() {
Serial.begin(115200);
Serial.println("Hello,serial!");
// set the data rate for the SoftwareSerial port
Serial3.begin(115200);
Serial3.println("AT");
}
void loop() { // run over and over
if (Serial3.available()) {
Serial.write(Serial3.read());
}
if (Serial.available()) {
Serial3.write(Serial.read());
}
}//将其中的结束符调为NL和CR 波特率调为115200 发送AT时会收到回复OK
我这里使用的是硬串口,如果没有多余的硬串口可以设置软串口,代码如下:
#includeSoftwareSerial mySerial(13, 12); // RX, TX,接esp的Tx,Rx void setup() { Serial.begin(115200); Serial.println("Hello,serial!"); // set the data rate for the SoftwareSerial port mySerial.begin(115200); mySerial.println("AT"); } void loop() { // run over and over if (mySerial.available()) { Serial.write(mySerial.read()); } if (Serial.available()) { mySerial.write(Serial.read()); } }//将其中的结束符调为NL和CR 波特率调为115200 发送AT时会收到回复OK
- 编译后可以通过电脑无线发送数据给Arduino了,我这里还是用网络调试助手来调试:
注意,需要将红色框部分选择为如图模式。
END



