开发者学堂课程【物联网平台开发全栈教程:设备端开发】学习笔记,与课程紧密联系,让用户快速学习知识。
课程地址:https://developer.aliyun.com/learning/course/562/detail/7698
设备端开发
内容介绍
一、硬件准备
二、工具准备
三、设备开发利器
四、单片机整体框架
课程概要:本课基于51单片机接入阿里云 IOT 平台,设备端开发准备
一、硬件准备
注意:购买的庆科模组型号为 EMW3080里面的固件必须是 AT 指令固件
1. 两种方法:
(1)购买时向卖家确认
(2)自己去升级查看固件版本号
2.参考方法:
https://www.hongchangzidonghua.com/?id=39
二、工具准备
1.电脑软件准备
(1)安装 Keil5编译环境
(2)下载视频配套小工具
(3)安装各种软件联系零妖老哥,可以获得更多学习资料
三、设备端开发利器
1. 画原理图和 PCB:www.lceda.cn
2、买元器件淘宝,立创商城:www.szzlcsc.com
3、PCB 打样深圳嘉立创 www.sz-jlc.com
4、寻找某型号 IC 的使用说明书 立创商城
5、可靠的云服务供应商 阿里云 www.aliyun.com
四、单片机整体框架
1. MQTT 本质上是二进制数据流
2.用 MQTT.FX 和 TCP 助手查看数据流
3.类似的方法用在单片机上
51单片机编程小工具基本原理
数据是二进制数据流,第一步是建立 tcp 数据连接,tcp 连接任务是交给 WIFI 模组来实现,模组只有一个功能,通过单片机串口与模组连接,传输参数: WIFI-SSID 和 WIFI 密码,连接上 WiFi 后, MQTT 域名和端口就是 http 服务的端口建立通信,单片机串口发送的数据直接发个服务器,通过小工具和三元组信息计算了参数,点击生成头文件,在小工具生成两个文件 MQTT_Message.h 和 MQTT_Message_Test.h。
打开
MQTT_Message_Test.h
//服务器回复心跳:
unsigned char MQTT_Heart_Reply[]={d0 00};
//断开连接报文:
unsigned char MQTT_DisConnect[]={ e0 00};
//属性上报的报文:
unsigned char MQTT_Post_Property[]={ 30 ad 01 00 3f 2f 73 79 73 2f
打开 MQTT_Message.h
Unsigned char MQTT_Connect_Reply[]={0x20,0x02,0x00,0x00,};
//设备发送心跳包:
unsigned char MQTT_Heart[]={0xc0,0x00};
//服务器回复心跳;
unsigned char MQTT_Heart_Reply[]={0xd0,0x00};
//断开连接报文:
unsigned char MQTT_DisConnect[]={ 0x00,0x00,};
打开网络调试助手,启动一个 TCP Server
单片机通过串口发送至服务器,服务器返回成功会发送心跳,客户端发送心跳是 c0 00,服务器应该回复 d0 00,在规定的时间内回调
发送消息后,小工具会接受的二进制消息
若单片机把数据发送至服务器,服务器也会收到消息
小工具:
直接通过串口与单片机进行连接,写数据到单片机可以把所有的数据写入单片机,保存到 flash 中,再通过报文读出来发给服务器
发送数据,生成属性上报是生成15.5摄氏度
每次只需要把15.5修改为自己需要的,服务器就会返回数据