• 大小: 830KB
    文件类型: .rar
    金币: 1
    下载: 0 次
    发布日期: 2021-06-06
  • 语言: 其他
  • 标签: MQTT  ESP8266  ONENET  

资源简介

Esp8266和MQTT协议连接onenet,可以上传数据到平台设备,onenet平台下发命令

资源截图

代码片段和文件信息

#include “onenet.h“


extern unsigned char esp8266_buf[256];


//==========================================================
// 函数名称: OneNET_Devlink
// 函数功能: 与onenet创建连接
// 入口参数: 无
// 返回参数: 1-成功 0-失败
// 说明: 与onenet平台建立连接
//==========================================================
_Bool OneNET_Devlink(void)
{

MQTT_PACKET_STRUCTURE mqttPacket = {NULL 0 0 0}; //协议包

unsigned char *dataPtr;

_Bool status = 1;

printf(“OneNET_Devlink\r\n“);
printf(“PROID: %s AUIF: %s DEVID:%s\r\n“ PROID AUTH_INFO DEVID);

if(MQTT_PacketConnect(PROID AUTH_INFO DEVID 256 0 MQTT_QOS_LEVEL0 NULL NULL 0 &mqttPacket) == 0)
{
ESP8266_SendData(mqttPacket._data mqttPacket._len); //上传平台

dataPtr = ESP8266_GetIPD(250); //等待平台响应
if(dataPtr != NULL)
{
if(MQTT_UnPacketRecv(dataPtr) == MQTT_PKT_CONNACK)
{
switch(MQTT_UnPacketConnectAck(dataPtr))
{
case 0:printf(“Tips: 连接成功\r\n“);status = 0;
break;

case 1:printf(“WARN: 连接失败:协议错误\r\n“);
break;
case 2:printf(“WARN: 连接失败:非法的clientid\r\n“);
break;
case 3:printf(“WARN: 连接失败:服务器失败\r\n“);
break;
case 4:printf(“WARN: 连接失败:用户名或密码错误\r\n“);
break;
case 5:printf(“WARN: 连接失败:非法链接(比如token非法)\r\n“);
break;

default:printf(“ERR: 连接失败:未知错误\r\n“);
break;
}
}
}

MQTT_DeleteBuffer(&mqttPacket); //删包
}
else
printf( “WARN: MQTT_PacketConnect Failed\r\n“);

return status;

}


unsigned char OneNET_FillBuf(char *buf)
{

char text[32];

memset(text 0 sizeof(text));

strcpy(buf “;“);

memset(text 0 sizeof(text));
sprintf(text “Tempreture%2.1f;“ 23.4);
strcat(buf text);

memset(text 0 sizeof(text));
sprintf(text “Humidity%2.1f;“ 66.8);
strcat(buf text);

return strlen(buf);

}


//json格式打包函数,type=5的方式
int MqttSample_PackDataByJson5(char *buf)
{

char text[32];

memset(text 0 sizeof(text));

strcpy(buf “;“);

memset(text 0 sizeof(text));
sprintf(text “Tempreture%2.1f;“ 23.4);
strcat(buf text);

memset(text 0 sizeof(text));
sprintf(text “Humidity%2.1f;“ 66.8);
strcat(buf text);

return strlen(buf);

}


//MQTT协议采用type=2方式封装数据函数(二进制发送数据)
//payload:存储打包的数据
//bin是发送的数组的首地址
//size是数组的长度
int MqttSample_PackDataByBinary2(u8 *payloadu8 *bin uint32_t size)
{
int payload_len;
    char json[]=“{\“ds_id\“:\“binary\“}“;
    unsigned short json_len;
    
    payload_len = 1 + 2 + strlen(json)/sizeof(char); 
    json_len = strlen(json)/sizeof(char);
    

    //Byte1,数据点类型指示:type=2二进制数据
    payload[0] = ‘\x02‘;

    //Byte2、Byte3指示后面json字符串长度
    payload[1] = (json_len & 0xFF00) >> 8;
    payload[2] = json_len & 0xFF;

//把json复制到t_payload数组中
memcpy(payload+3 json json_len);


payload[payload_len] = (size & 0xFF000000)>>24;
payload[payload_len+1]=(size & 0x00FF0000)>>16;
payload[payloa

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----

     文件       7108  2018-05-25 16:50  ESP8266和MQTT协议修改版\ESP8266和MQTT协议\OneNET\ESP8266\esp8266.c

     文件       1128  2018-05-25 17:01  ESP8266和MQTT协议修改版\ESP8266和MQTT协议\OneNET\ESP8266\esp8266.h

     文件        568  2017-05-26 09:03  ESP8266和MQTT协议修改版\ESP8266和MQTT协议\OneNET\MQTT\common.h

     文件      34242  2018-06-11 13:38  ESP8266和MQTT协议修改版\ESP8266和MQTT协议\OneNET\MQTT\mqttkit.c

     文件       6858  2018-05-25 10:25  ESP8266和MQTT协议修改版\ESP8266和MQTT协议\OneNET\MQTT\mqttkit.h

     文件      15278  2017-06-14 13:54  ESP8266和MQTT协议修改版\ESP8266和MQTT协议\OneNET\MQTT\sample.c

     文件        680  2017-06-14 13:46  ESP8266和MQTT协议修改版\ESP8266和MQTT协议\OneNET\MQTT\SDK使用说明.txt

     文件       7145  2018-06-13 10:15  ESP8266和MQTT协议修改版\ESP8266和MQTT协议\OneNET\onenet.c

     文件        589  2018-06-13 09:13  ESP8266和MQTT协议修改版\ESP8266和MQTT协议\OneNET\onenet.h

     文件       6956  2015-12-10 17:06  ESP8266和MQTT协议修改版\ESP8266和MQTT协议\PROJECT\DebugConfig\STM32F103RCT6_STM32F103RC_1.0.0.dbgconf

     文件       6956  2015-12-10 17:06  ESP8266和MQTT协议修改版\ESP8266和MQTT协议\PROJECT\DebugConfig\Target_1_STM32F103RC_1.0.0.dbgconf

     文件        339  2018-06-13 09:53  ESP8266和MQTT协议修改版\ESP8266和MQTT协议\PROJECT\EventRecorderStub.scvd

     文件      53541  2018-06-13 08:35  ESP8266和MQTT协议修改版\ESP8266和MQTT协议\PROJECT\Listings\startup_stm32f10x_hd.lst

     文件     150715  2018-06-13 10:15  ESP8266和MQTT协议修改版\ESP8266和MQTT协议\PROJECT\Listings\基于MQTT协议上传数据.map

     文件     224886  2018-06-13 08:35  ESP8266和MQTT协议修改版\ESP8266和MQTT协议\PROJECT\objects\delay.crf

     文件        340  2018-06-13 08:35  ESP8266和MQTT协议修改版\ESP8266和MQTT协议\PROJECT\objects\delay.d

     文件     240056  2018-06-13 08:35  ESP8266和MQTT协议修改版\ESP8266和MQTT协议\PROJECT\objects\delay.o

     文件     233789  2018-06-13 08:35  ESP8266和MQTT协议修改版\ESP8266和MQTT协议\PROJECT\objects\esp8266.crf

     文件        593  2018-06-13 08:35  ESP8266和MQTT协议修改版\ESP8266和MQTT协议\PROJECT\objects\esp8266.d

     文件     260124  2018-06-13 08:35  ESP8266和MQTT协议修改版\ESP8266和MQTT协议\PROJECT\objects\esp8266.o

     文件         19  2018-06-13 10:11  ESP8266和MQTT协议修改版\ESP8266和MQTT协议\PROJECT\objects\ExtDll.iex

     文件     224346  2018-06-13 08:35  ESP8266和MQTT协议修改版\ESP8266和MQTT协议\PROJECT\objects\led.crf

     文件        314  2018-06-13 08:35  ESP8266和MQTT协议修改版\ESP8266和MQTT协议\PROJECT\objects\led.d

     文件     236408  2018-06-13 08:35  ESP8266和MQTT协议修改版\ESP8266和MQTT协议\PROJECT\objects\led.o

     文件     242418  2018-06-13 09:33  ESP8266和MQTT协议修改版\ESP8266和MQTT协议\PROJECT\objects\main.crf

     文件        810  2018-06-13 09:33  ESP8266和MQTT协议修改版\ESP8266和MQTT协议\PROJECT\objects\main.d

     文件     251244  2018-06-13 09:33  ESP8266和MQTT协议修改版\ESP8266和MQTT协议\PROJECT\objects\main.o

     文件      20598  2018-06-13 08:35  ESP8266和MQTT协议修改版\ESP8266和MQTT协议\PROJECT\objects\mqttkit.crf

     文件        280  2018-06-13 08:35  ESP8266和MQTT协议修改版\ESP8266和MQTT协议\PROJECT\objects\mqttkit.d

     文件      61736  2018-06-13 08:35  ESP8266和MQTT协议修改版\ESP8266和MQTT协议\PROJECT\objects\mqttkit.o

............此处省略58个文件信息

评论

共有 条评论