2021-08-22学习笔记:BL604 传感器数据上传华为云02

news/2024/10/21 5:53:12/

BL604 传感器数据上传华为云02

  • 今日总结
  • 函数调用过程
  • 一些问题
  • 总结


今日总结

今天在大致理解了demo中数据上传函数的基础上,成功实现了将温度传感器的数据上传至华为云,但结果仍不完美,目前只能实现整形数据的上传,未能实现浮点型数据上传。

函数调用过程

/*数据上报处理函数*/ 
static void  oc_report_normal(void)
{//static int times = 1;int ret;/*if(times == EN_OC_MQTT_PROFILE_MSG_TYPE_UP_MSGUP){oc_mqtt_profile_msgup_t msgup;msgup.device_id = CN_EP_DEVICEID;msgup.id = "12345";msgup.name = "MSGUP";msgup.msg = "Hello,Message Up";msgup.msg_len = strlen(msgup.msg);oc_mqtt_profile_msgup(NULL,&msgup);}else if(times == EN_OC_MQTT_PROFILE_MSG_TYPE_UP_PROPERTYREPORT)*/{//  用于拼装JSON数据的变量oc_mqtt_profile_kv_t Temperature_List;//  添加初始化服务代码///< initialize the services_device_service.event_time = NULL;s_device_service.service_id = "bls_01";//第一处关键替换,填入对应的产品名称s_device_service.service_property = &Temperature_List;s_device_service.nxt = NULL;//  添加数据所需要的变量int Temperature = 66;//移植DS18B20程序开始BL602_Delay_MS(180);//bl_uart_init(0, 16, 7, 255, 255, 2 * 1000 * 1000);while(DS18B20_Init()){printf("DS18B20 checked failed!!!\r\n");BL602_Delay_MS(500);}printf("DS18B20 checked success!!!\r\n");//移植DS18B20程序结束while(1){osal_task_sleep(10000);if(1)//默认有效 // {/*组装JSON数据*/ Temperature = DS18B20_Get_Temp()/10;Temperature_List.key = "Temperature";//第二处关键替换:填入对应属性名称Temperature_List.value = (char *)&Temperature;Temperature_List.type = EN_OC_MQTT_PROFILE_VALUE_INT;Temperature_List.nxt = NULL;//  添加数据上报代码ret = oc_mqtt_profile_propertyreport(NULL,&s_device_service);if(!ret){printf("%s\r\n","max.su -> My report success");}else{printf("max.su -> error code %d\r\n", ret);}}}}return;
}

华为云
剩下的替换自行比对博客中的代码和demo中的代码即可,替换完后编译加下载,复位后即可观测到数据

一些问题

  1. 目前只能传输整形数据,如果改为浮点型数据的话在华为云端检测的值就会非常奇怪
  2. 有时候数据会有异常波动,不过一般持续时间较短,应该不是传感器的问题

总结

  1. 套用demo,关键是理解里面参数的含义。
  2. 善用官方教程,今天之所以能够加深对demo中函数的理解,是因为发现了华为云的官方教程
    设备属性上报

http://www.ppmy.cn/news/625920.html

相关文章

2021-08-21学习笔记:BL604 传感器数据上传华为云01

8月21日学习笔记&#xff1a;BL604 传感器数据上传华为云 今日概述任务的调度寻找数据上传接口函数明日规划 今日概述 两个任务 在昨天成功完成了华为云的设备与BL604开发板的连接以后&#xff0c;在今天我开始了对将温度传感器&#xff08;DS18B20&#xff09;的数据传入到华…

华为EC1260-通话短信 http://majszt.blog.hexun.com/33967361_d.html

http://majszt.blog.hexun.com/33967361_d.html http://hexun.com/majszt > 复制 > 收藏 | 移动个人门户 和讯博客 | 和讯首页 醒醒吧 ))))) --cHaRLiEs bLoG 个人门户 博客 相册 音乐 网摘 博揽 邮箱 朋友圈 好友 留言 进入我的家 联系主人 发送私信 | 给主人留言 | 送小…

maven打jar包时,缺少本地jar包

最近通过Docker harbor kuboard方式进行在开发环境进行部署&#xff0c;遇到了一个问题&#xff0c;本地idea中运行项目正常&#xff0c;但是kuboard一直报错重启。 BACK-OFF RESTARTING FAILED CONTAINER通过查看kuboard日志发现是在运行容器启动项目时&#xff0c;缺少了一…

cgroups以及在K8s中的应用 - CPU

cgroups(control groups,控制组群) 是 Linux 内核的一个功能,用来限制、控制与分离一个进程组的资源(如CPU、内存、磁盘输入输出等)。它是由 Google 的两位工程师进行开发的,自 2008 年 1 月正式发布的 Linux 内核 v2.6.24 开始提供此能力。cgroups到目前为止,有两个大…

题目:1822.数组元素积的符号

​​题目来源&#xff1a; leetcode题目&#xff0c;网址&#xff1a;1822. 数组元素积的符号 - 力扣&#xff08;LeetCode&#xff09; 解题思路&#xff1a; 初始res为 1&#xff0c;遍历数组&#xff0c;对于数组中的每个元素&#xff0c;若其为 0 &#xff0c;结果为 0 &a…

津津乐道设计模式 - 解释器模式详解(用简单的数学表达式带你领悟)

&#x1f604; 19年之后由于某些原因断更了三年&#xff0c;23年重新扬帆起航&#xff0c;推出更多优质博文&#xff0c;希望大家多多支持&#xff5e; &#x1f337; 古之立大事者&#xff0c;不惟有超世之才&#xff0c;亦必有坚忍不拔之志 &#x1f390; 个人CSND主页——Mi…

ubuntu:NVIDIA设置性能模式,以降低CPU使用、温度

NVIDIA设置性能模式&#xff0c;以降低CPU使用、温度 ubuntu安装完NVIDIA显卡驱动后 终端输入 nvidia-settings 选择OpenGL Settings->Image Settings 向左是质量模式&#xff0c;向右是性能模式 选择性能模式降低CPU的使用 转载于:https://www.cnblogs.com/Spiro-K/p/66714…

海思HI35xx平台CPU温度监测

前言 随着芯片的集成度提高&#xff0c;芯片内部的晶体管数量也不断增多&#xff0c;产生的热量也难以通过小小芯片封装散发出去&#xff08;常用封装材料有塑料、陶瓷、玻璃、金属&#xff0c;CPU一般采用金属材料封装&#xff09;&#xff0c;高温是会对芯片的性能产生极其有…