研究过嵌入式方面的人都应该了解 esp8266 wifi芯片,前段时间接触一个小竞赛,需要一块传输数据给服务器的模块,毫不犹豫选择了esp8266,可能是自己孤陋寡闻吧... 进入正题
1. 开发环境
Arduino 编写芯片程序需要
eclipse 编写服务端程序
花生壳 内网穿透(不是一定要有的)
2. 硬件连线图
(图片源自网络)
(wifi芯片,AT指令通用的,只是连线不同罢了)
2. 首先在Arduino 开发环境,使用软串口的方式 ,使用单片机和esp8266发送数据 ,代码如下
#include <SoftwareSerial.h>
SoftwareSerial mySerial(3, 2); // RX, TX
void setup()
{
Serial.begin(9600);
while (!Serial) {;}
Serial.println("hardware serial!");
mySerial.begin(9600);
mySerial.println("software seria");
}
void loop()
{
if (mySerial.available())
Serial.write(mySerial.read());
if (Serial.available())
mySerial.write(Serial.read());
}
这段代码在Arduino 开发环境编写,电脑通过硬串口与单片机发送数据,单片机使用软串口和 esp8266发送数据
成功之后,在串口助手中可以发现如下信息
(注意一定要先选中下面的 发送新行!)
3. 通过 AT 指令,设置 esp 8266的wifi源(也就是 这个芯片借用别人的wifi发送消息,就是蹭wifi)
这里先写上几个我在尝试过程中遇到的bug