资源简介
从onenet例程修改过来的,使用STM32F407+ESP8266接入onenet平台的最终修改代码。
代码片段和文件信息
/**
************************************************************
************************************************************
************************************************************
* 文件名: dStream.c
*
* 作者: 张继瑞
*
* 日期: 2017-09-11
*
* 版本: V1.1
*
* 说明: cJson格式数据流通用封装
*
* 修改记录: V1.1:修复当数据流flag全为0时封装错误的bug。
************************************************************
************************************************************
************************************************************
**/
//协议封装文件
#include “dStream.h“
//C库
#include
#include
//==========================================================
// 函数名称: DSTREAM_toString
//
// 函数功能: 将数值转为字符串
//
// 入口参数: StreamArray:数据流
// buf:转换后的缓存
// pos:数据流中的哪个数据
// bufLen:缓存长度
//
// 返回参数: 无
//
// 说明:
//==========================================================
void DSTREAM_toString(DATA_STREAM *streamArray char *buf unsigned short pos unsigned short bufLen)
{
memset(buf 0 bufLen);
switch((unsigned char)streamArray[pos].dataType)
{
case TYPE_BOOL:
snprintf(buf bufLen “%d“ *(_Bool *)streamArray[pos].dataPoint);
break;
case TYPE_CHAR:
snprintf(buf bufLen “%d“ *(signed char *)streamArray[pos].dataPoint);
break;
case TYPE_UCHAR:
snprintf(buf bufLen “%d“ *(unsigned char *)streamArray[pos].dataPoint);
break;
case TYPE_SHORT:
snprintf(buf bufLen “%d“ *(signed short *)streamArray[pos].dataPoint);
break;
case TYPE_USHORT:
snprintf(buf bufLen “%d“ *(unsigned short *)streamArray[pos].dataPoint);
break;
case TYPE_INT:
snprintf(buf bufLen “%d“ *(signed int *)streamArray[pos].dataPoint);
break;
case TYPE_UINT:
snprintf(buf bufLen “%d“ *(unsigned int *)streamArray[pos].dataPoint);
break;
case TYPE_LONG:
snprintf(buf bufLen “%ld“ *(signed long *)streamArray[pos].dataPoint);
break;
case TYPE_ULONG:
snprintf(buf bufLen “%ld“ *(unsigned long *)streamArray[pos].dataPoint);
break;
case TYPE_FLOAT:
snprintf(buf bufLen “%f“ *(float *)streamArray[pos].dataPoint);
break;
case TYPE_DOUBLE:
snprintf(buf bufLen “%f“ *(double *)streamArray[pos].dataPoint);
break;
case TYPE_GPS:
snprintf(buf bufLen “{\“lon\“:%s\“lat\“:%s}“ (char *)streamArray[pos].dataPoint (char *)(streamArray[pos].dataPoint) + 16);
break;
case TYPE_STRING:
snprintf(buf bufLen “\“%s\““ (char *)streamArray[pos].dataPoint);
break;
}
}
//==========================================================
// 函数名称: DSTREAM_GetDataStream_Body
//
// 函数功能: 获取数据流格式消息体
//
// 入口参数: type:格式类型
// streamArray:数据流结构
// streamArrayCnt:数据流个数
// buffer:缓存
// maxLen:最大缓存长度
// offset:偏移
//
// 返回参数: Body的长度,0-失败
//
// 说明:
//==========================================================
short DSTREAM_GetDataStream_Body(uns
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
目录 0 2018-02-26 08:23 stm32f407_iot\
目录 0 2018-02-26 12:31 stm32f407_iot\MDK\
目录 0 2018-02-26 08:23 stm32f407_iot\MDK\DebugConfig\
文件 2084 2015-10-27 12:06 stm32f407_iot\MDK\DebugConfig\Target_1_STM32F407ZGTx.dbgconf
文件 2084 2015-10-27 12:06 stm32f407_iot\MDK\DebugConfig\stm32f4_project_STM32F407ZGTx.dbgconf
文件 123683 2018-02-26 12:31 stm32f407_iot\MDK\Jli
文件 762 2018-02-26 09:06 stm32f407_iot\MDK\Jli
目录 0 2018-02-26 08:23 stm32f407_iot\MDK\Listings\
文件 77572 2018-02-26 08:24 stm32f407_iot\MDK\Listings\startup_stm32f40_41xxx.lst
文件 203095 2018-02-26 12:31 stm32f407_iot\MDK\Listings\stm32f407_ex.map
目录 0 2018-02-26 12:31 stm32f407_iot\MDK\ob
文件 9817 2018-02-26 08:24 stm32f407_iot\MDK\ob
文件 237 2018-02-26 08:24 stm32f407_iot\MDK\ob
文件 19248 2018-02-26 08:24 stm32f407_iot\MDK\ob
文件 15087 2018-02-26 08:24 stm32f407_iot\MDK\ob
文件 276 2018-02-26 08:24 stm32f407_iot\MDK\ob
文件 37792 2018-02-26 08:24 stm32f407_iot\MDK\ob
文件 14474 2018-02-26 08:24 stm32f407_iot\MDK\ob
文件 357 2018-02-26 08:24 stm32f407_iot\MDK\ob
文件 18276 2018-02-26 08:24 stm32f407_iot\MDK\ob
文件 460115 2018-02-26 12:31 stm32f407_iot\MDK\ob
文件 2152 2018-02-26 12:31 stm32f407_iot\MDK\ob
文件 492288 2018-02-26 12:31 stm32f407_iot\MDK\ob
文件 443768 2018-02-26 08:23 stm32f407_iot\MDK\ob
文件 1743 2018-02-26 08:23 stm32f407_iot\MDK\ob
文件 482424 2018-02-26 08:23 stm32f407_iot\MDK\ob
文件 459918 2018-02-26 08:24 stm32f407_iot\MDK\ob
文件 2292 2018-02-26 08:24 stm32f407_iot\MDK\ob
文件 521616 2018-02-26 08:24 stm32f407_iot\MDK\ob
文件 449814 2018-02-26 09:03 stm32f407_iot\MDK\ob
文件 1986 2018-02-26 09:03 stm32f407_iot\MDK\ob
............此处省略242个文件信息
相关资源
- 基于STM32F4x9的LCD显示
- 在各城市的窄带物联网中传感器起到
- 物联网家居系统中基于单片机的多路
- 物联网中无线传感器节点和RFID数据融
- 有关面向工业物联网的无线传感器网
- 物联网无线传感器网络的7大特点
- stm32F4+w5300
- EMCP物联网云平台操作手册
- FreeModbus_Slave+STM32F407+USART2代码亲测可
- 电信物联网NB-lot上传编解码插件检测
- STM32F407 串口配置 串口1~6 六串口同时
- STM32F407_6个串口同时使用的代码
- 物联网云平台设备管理和相关页面
- STM32F407实时时钟_DS1302实时时钟模块和
- STM32F429内部FLASH读写程序
- stm32f407读写flash的demo,基于正点原子
- STM32F4x7_ETH_LwIP_V1.0.0
- 中国移动NB-IoT安全白皮书.pdf
- 智能网联汽车信息安全白皮书
- 物联网行业新突破:UWB人员定位技术
- 开放充电协议标准2.0 OCPP 2.0
- 基于STM32F407的视频采集与传输系统设
- 物联网智能家居平台DIY:ARDUINO 物联网
-
Symli
nk XR1020--工业物联网智能网关规 - W5500Test-20180314.7z
- 矿山物联网网络技术发展趋势与关键
- 矿山物联网云计算与平台技术
- FCS技术在矿山物联网感知层的应用
- 论感知矿山物联网与矿山综合自动化
- 论矿山物联网的结构性平台与服务性
评论
共有 条评论