1.2 kyLin-V3.0-OneNET-进阶代码(一)
进阶代码(一)
实验一 麒麟座V3.0综合应用代码-EDP
一. 相比基础EDP增加下面头文件:
框架 -->"framework.h" //裸机框架层(感觉是 rtos的简化版)
网络协议层--> "fault.h" //网络错误处理
网络设备 --> "net_device.h"
功能:1.平台IP和PORT通过参数传入的方式确定,解决了不同协议网络设备驱动不通用的问题。
2.取消了手动配置网络,上电等待wifi模块自动连接,若不成功则使用OneNET公众号进行配网(推荐这种,微信airkiss配网)。
3.更改了数据获取接口,适配rb机制。
4.取消了透传模式。
硬件驱动 --> 硬件基本都在里面
中文数据流--> "dataStreamName.h"
网络协议层--> "fault.h" //网络错误处理
网络设备 --> "net_device.h"
功能:1.平台IP和PORT通过参数传入的方式确定,解决了不同协议网络设备驱动不通用的问题。
2.取消了手动配置网络,上电等待wifi模块自动连接,若不成功则使用OneNET公众号进行配网(推荐这种,微信airkiss配网)。
3.更改了数据获取接口,适配rb机制。
4.取消了透传模式。
硬件驱动 --> 硬件基本都在里面
中文数据流--> "dataStreamName.h"
二.数据上传与命令下发
数据流上传格式:数据流名称、数据流指针、数据流类型、数据流上传标志。
命令下发命令格式:
命令下发命令格式:
设备信息-->发送命令
如:{redled}{0}

如:{redled}{0}
三.数据发送(协议)
函数名称:DATA_Task
函数功能:数据发送主任务
这个函数 EDP HTTP MQTT
3种协议中这个函数都不一样,主要看这个函数
这个函数 EDP HTTP MQTT
3种协议中这个函数都不一样,主要看这个函数
四.连接方式
1. 进入OneNET公众号 -->开发助手-->配置wifi(微信airkiss配网)
配网成功:
微信会提示 配网成功
串口会有如下显示:
注意:第一次使用进阶代码时,需要使用这种微信配网方式,以后wifi和密码就会储存在at24c02中,不用再次配网
2.代码里面 修改2个参数
3.现象:
串口: Tips:Send Ok [2017-12-28 10:33:37.931]
Tips:OneNet_SendData-EDP_TYPE3[2017-12-28 10:33:53.006]
Send 234 Bytes [2017-12-28 10:33:53.019]
网页上 DATA_STREAM-EDP "在线"
命令下发:
命令下发:
控制LED4~7:{redled}{V}、{greenled}{V}、{yellowled}{V}、{blueled}{V} 开值1,关值0。
控制蜂鸣器: {beep}{V} 开值1,关值0。
注意:之后的代码(3.kyLin-V3.0-OneNET-裸机-进阶例程和4.kyLin-V3.0-OneNET-RTOS)都有此功能!
问题记录:
发现一个bug:灯只有在亮的情况下,发送灭才能灭
比如:在4个灯全亮时,依次发送下面4条命名
{redled}{0}、{greenled}{0}、{yellowled}{0}、{blueled}{0}
4个灯依次熄灭;
再 发送 {redled}{1}时,红灯不会亮!
发现一个bug:灯只有在亮的情况下,发送灭才能灭
比如:在4个灯全亮时,依次发送下面4条命名
{redled}{0}、{greenled}{0}、{yellowled}{0}、{blueled}{0}
4个灯依次熄灭;
再 发送 {redled}{1}时,红灯不会亮!