100字范文,内容丰富有趣,生活中的好帮手!
100字范文 > EMW3080 STC15轻松实现设备上云3(阿里云物联网平台 智能生活开放平台)

EMW3080 STC15轻松实现设备上云3(阿里云物联网平台 智能生活开放平台)

时间:2020-04-07 12:16:14

相关推荐

EMW3080 STC15轻松实现设备上云3(阿里云物联网平台 智能生活开放平台)

警告:本系列教程针对ILOP.A221固件开发,如使用其他ILOP固件,请自行修改配网部分、数据上报部分及解析服务器下发信息部分!

从本节开始我们就开始写程序用STC15单片机了实现设备上云啦!在此之前我们需要完成以下步骤:

1.完成EMW3080+STC15轻松实现设备上云1(阿里云物联网平台、智能生活开放平台)

2.完成EMW3080+STC15轻松实现设备上云2(阿里云物联网平台、智能生活开放平台)

3.安装Keil(此处省略安装教程)

4.下载stc-isp-15xx-v6.86R.zip(此处省略安装教程)

5.点我获取程序源码(程序源码已更新至基于V2.3.2版本固件开发)

源码比较简单,在这里就不花大篇幅来讲解了,仅简单的讲解重要的代码部分!

1. 如何上报数据?

Send_AT("AT+ILOPSENDICA=property,标识符,上报的数据\r");//上报数据(可同时上报多个数据)

2.如何判断成功上报数据?

在我们成功上报数据后,EMW3080会返回OK,由此根据这个特点我们只需要判断模组返回的数据中是否含有OK便可判断指令是否发送成功

//发送AT指令.这里会等待回复的OK,否则会重发void Send_AT(unsigned char *Str){unsigned char Dat=0;unsigned char Count=0;unsigned char Loop_Count=0;unsigned char ReSend_Count=0;Send_Str2(Str);//先通过串口发送出去while(1)//等待回复{Delay1ms(50);Loop_Count++;if(Loop_Count >= 100){ReSend_Count++;if(ReSend_Count < 3){Loop_Count = 0;Send_Str1("\r\n重发指令: ");Send_Str1(Str);Send_Str1("\r\n");Send_Str2(Str);//重发一遍}else{Send_Str1("\r\n发送失败: ");Send_Str1(Str);Send_Str1("\r\n");return;//重发失败,退出}}if(Get_Byte_WIFI(&Dat)){if (Dat == 'O'){Delay1ms(20);Get_Byte_WIFI(&Dat);if(Dat == 'K'){Send_Str1("\r\n成功执行一条指令: ");Send_Str1(Str);Send_Str1("\r\n");return;}}}}}

3. 如何解析平台下发的数据

if(Compare_str(Dat,"标识符,数据") != 255)

{

Send_Str1("\r\n 串口提示语句 \r\n");

}

void Analyze_MQTT_Read(void)//解析服务器下发的消息{unsigned int Len=0;unsigned char Dat[256];if(Get_Mess_Count_WIFI() == 0)return;Len=0;while(Get_Byte_WIFI(&Dat[Len++]));//获取接收缓冲区数据Dat[Len] = 0;if(Compare_str(Dat,"LightSwitch,1") != 255) {Send_Str1("\r\n 平台下发命令:打开主灯! \r\n");}if(Compare_str(Dat,"LightSwitch,0") != 255) {Send_Str1("\r\n 平台下发命令:关闭主灯! \r\n");}if(Compare_str(Dat,"NightLightSwitch,1") != 255) {Send_Str1("\r\n 平台下发命令:打开夜灯! \r\n");}if(Compare_str(Dat,"NightLightSwitch,0") != 255) {Send_Str1("\r\n 平台下发命令:关闭夜灯! \r\n");}}

-------------------------------------------------------------------

注意:

1.EMW3080配网需要用到的AT指令工程包可在此处下载

2.若需要重新配网绑定,需要完成以下步骤:

解绑:AT+ILOPRESET\r

停止服务操作:AT+ILOPSTOP\r

重启模块:AT+REBOOT\r

重启模块后从 启动 ilop 服务AT+ILOPSTART\r开始运行即可

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。