设备端开发 | 学习笔记

简介: 快速学习 设备端开发

开发者学堂课程【物联网平台开发全栈教程设备端开发学习笔记,与课程紧密联系,让用户快速学习知识。

课程地址:https://developer.aliyun.com/learning/course/562/detail/7698


设备端开发


内容介绍

一、硬件准备

二、工具准备

三、设备开发利器

四、单片机整体框架

 

课程概要:本课基于51单片机接入阿里云 IOT 平台,设备端开发准备


一、硬件准备

注意:购买的庆科模组型号为 EMW3080里面的固件必须是 AT 指令固件

1. 两种方法:

1)购买时向卖家确认

2)自己去升级查看固件版本号

2.参考方法:

https://www.hongchangzidonghua.com/?id=39

image.png


二、工具准备

1.电脑软件准备

1)安装 Keil5编译环境

2)下载视频配套小工具

3)安装各种软件联系零妖老哥,可以获得更多学习资料

image.png


三、设备端开发利器

1. 画原理图和 PCBwww.lceda.cn

2、买元器件淘宝,立创商城:www.szzlcsc.com

3PCB 打样深圳嘉立创 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

image.png

单片机通过串口发送至服务器,服务器返回成功会发送心跳,客户端发送心跳是 c0 00,服务器应该回复 d0 00,在规定的时间内回调

发送消息后,小工具会接受的二进制消息

若单片机把数据发送至服务器,服务器也会收到消息

小工具:

直接通过串口与单片机进行连接,写数据到单片机可以把所有的数据写入单片机,保存到 flash 中,再通过报文读出来发给服务器

发送数据,生成属性上报是生成15.5摄氏度

image.png

每次只需要把15.5修改为自己需要的,服务器就会返回数据

相关实践学习
RocketMQ一站式入门使用
从源码编译、部署broker、部署namesrv,使用java客户端首发消息等一站式入门RocketMQ。
消息队列 MNS 入门课程
1、消息队列MNS简介 本节课介绍消息队列的MNS的基础概念 2、消息队列MNS特性 本节课介绍消息队列的MNS的主要特性 3、MNS的最佳实践及场景应用 本节课介绍消息队列的MNS的最佳实践及场景应用案例 4、手把手系列:消息队列MNS实操讲 本节课介绍消息队列的MNS的实际操作演示 5、动手实验:基于MNS,0基础轻松构建 Web Client 本节课带您一起基于MNS,0基础轻松构建 Web Client
相关文章
|
传感器 物联网 数据管理
.NETCore/C#开发IOT嵌入式设备的个人见解
.NETCore/C#开发IOT嵌入式设备的个人见解
1075 0
.NETCore/C#开发IOT嵌入式设备的个人见解
|
2月前
|
JSON 算法 应用服务中间件
嵌入式设备OTA升级的大致过程!
嵌入式设备OTA升级的大致过程!
56 0
|
8月前
计算机维修的工具与设备
计算机维修的工具与设备。
24 1
|
10月前
|
编解码 监控 前端开发
如何快速实现Android平台前端设备接入能力
SIP(会话初始化协议)是在 IP网络上进行多媒体通信的应用层控制协议,以几种RFC的形式提供,其中最重要的是包含核心协议规范的RFC3261。该协议用于创建,修改和终止与一个或多个参与者的会话。通过会话,我们了解了一组进行通信的发送方和接收方,以及在通信过程中这些发送方和接收方保持的状态。会话的示例可以包括Internet电话呼叫,多媒体分发,多媒体会议,分布式计算机游戏等。
|
11月前
|
存储 Java API
HarmonyOS学习路之开发篇—设备管理(设备标识符)
网络设备节点通信标识符,是分布式软总线提供的一种非永久性标识符。NetworkID基于Java原生的UUID接口随机生成,长度为32字节,使用十六进制表示。主要用于业务调用分布式能力时,标识分布式网络内的设备节点。
HarmonyOS学习路之开发篇—网络与连接(WLAN开发 二)
应用可以添加指定的热点,其选网优先级低于已保存热点。如果扫描后判断该热点为最合适热点,自动连接该热点。
|
11月前
|
API
HarmonyOS学习路之开发篇—网络与连接(WLAN开发 一)
无线局域网(Wireless Local Area Networks,WLAN),是通过无线电、红外光信号或者其他技术发送和接收数据的局域网,用户可以通过WLAN实现结点之间无物理连接的网络通讯。常用于用户携带可移动终端的办公、公众环境中。
|
网络协议 物联网 5G
教你如何进行嵌入式网络模块的联网操作
教你如何进行嵌入式网络模块的联网操作
179 0
教你如何进行嵌入式网络模块的联网操作
|
JSON 运维 物联网
设备接入 | 学习笔记
快速学习设备接入
274 0
 设备接入 | 学习笔记
|
Linux 开发工具 Android开发
[STF 手机设备管理平台] 连接其它操作系统上的安卓设备实操介绍
[STF 手机设备管理平台] 连接其它操作系统上的安卓设备实操介绍
269 0
[STF 手机设备管理平台] 连接其它操作系统上的安卓设备实操介绍