【PT+Arduino+OneNET基础教程9】Arduino上云OneNET(TCP透传)信息接收与发送教程ESP8266-01(s)
教程1.PacketTracer中MCU芯片编程入门教程
教程2.全部智能设备连接MCU使用方法
教程3.读卡器与红外探测器连接MCU使用方法
教程4.常用传感器使用方法
教程5.几种按钮与开关的使用方法
教程6.执行器使用方法
教程7.上云教程
教程8.多设备上云教程
教程9.Arduino+OneNET TCP透传上云教程(发+收)
关于拓扑连线大家可以参照这位博主的博客,【小白入门】超详细Arduino uno接入onenet云平台教程(TCP透传) 我也是通过这篇文章进行的入门学习,但是遇到了一些困难,无法正常使用上云部分的代码。所以我又进行了一些学习,掌握了一些串口与软串口通信的知识,与发送消息到onenet以及从onenet接收消息的方法(tcp透传)。
芯片:ArduinoMega2560 或 ArduinoUno
注:我的ESP8266 RX接了11 TX接了10 大家可以根据需要改变接口 EN引脚也要接5V或3.3V
那么我们连线完成后,从配网开始讲解
大家可以先打开手机热点,设置热点名称(手机名称)与热点密码(二者都不要含有中文,越简单越好)
烧录以下代码
#include <SoftwareSerial.h>
SoftwareSerial mySerial(10,11);//如果无法正常使用大家可以把10和11换一下,可能大家把RX和TX接反了,是很常见也很好解决的错误
void setup()
{
Serial.begin(115200);//打开硬串口
while(!Serial){
//有没有其实基本无所谓
;
}
Serial.println("hard");//硬串口输出hard表示硬串口打开成功了
mySerial.begin(115200);//打开软串口
mySerial.println("soft");//软串口输出soft表示软串口打开成功了
}
void loop()
{
if(mySerial.available()){
//如果软串口检测到信息
Serial.write(mySerial.read());//硬串口输出软串口读到的信息
}
if(Serial.available()){
//如果硬串口检测到信息
mySerial.write(Serial.read());//软串口输出硬串口的信息
}
}
硬串口是我们在串口监视器可以看到的信息
软串口不能通过串口监视器看到
所以我们要在硬串口输出软串口接收到的信息
烧录运行之后点击右上角串口监视器

可以看到以下信息(如果波特率不正确可能看不到如图,往下跟就好了)

然后我们下方选择波特率

在这里选择NL和CR

由于大家切换了波特率所以可能会重新显示几条信息如下图,如果波特率本来就正确就不需要重新选了

然后在上方输入AT并回车

显示OK

再输入AT+RST 按回车

再输入AT+CWMODE=1回车
然后输入AT+CWJAP=“wifi账号”,“wifi密码”

大家请一定注意自己的热点没有被手机自动关闭
此时我们可以看一下手机是不是有ESP设备连接上了热点
若有则说明连接成功 如果没有大家可以多试几次,我当时也是失败了很多次,然后就不停地烧录运行,终于成功了。
那么接下来就可以进行上云代码了
第一部分:发送消息至云平台
这位博主采用了芯片每次运行都自动再次连接wifi并先连接服务器的策略


本文详细介绍了如何使用Arduino和ESP8266通过OneNET实现TCP透传的云平台信息接收与发送。通过设置热点、连接WiFi、配置AT指令,实现设备的上云通信。教程中提到的代码解决了串口通信问题,包括建立连接、发送数据、接收数据和断开连接,并提供了提高稳定性的优化方法。
最低0.47元/天 解锁文章
1538

被折叠的 条评论
为什么被折叠?



