Arduino硬件间串口通讯与阿里云传输


前言

本次实验很有参考价值,不同板子之间通过串口传输数据,各自实现不同的功能,很有实验价值,过程中也遇到一点坑,上报的数据格式必须与功能定义的一致,而mind+上传的数据格式默认带小数点,阿里云的int32型不支持小数点,必须换成float型才行。

提示:以下是本篇文章正文内容,下面案例可供参考

一、Arduino采集数据

首先使用Arduino采集需要的数据,笔者这里使用的是DHT11温湿度传感器,采集简单的温度作为实验。
Arduino IDE代码:

#include <dht.h>
dht DHT11;                    //创建一个变量类型DHT11
#define DHT11_Pin D7          //DHT11所接引脚为D7
int Temp_Value;

// 主程序开始
void setup() {
  //dht11_5.begin(5, DHT11);
  Serial.begin(115200);
}
void loop() {
  delay(2000);
   DHT11_detection(); 
  
}
void DHT11_detection(void){
  //DHT11检测
  //Serial.print("DHT11: ");
  D: int chk = DHT11.read11(DHT11_Pin);//读取DHT11传感器的数值
  switch (chk)
  {
  case DHTLIB_OK:    
    break;
  case DHTLIB_ERROR_CHECKSUM:   
    break;
  case DHTLIB_ERROR_TIMEOUT: 
    break;
  default: 
    break;
  }
  Temp_Value = DHT11.temperature;   //将读取到的温度数值存放到Temp_Value变量中
  Serial.write(Temp_Value);
}

二、掌控板读取数据并上云

首先设置好wifi与阿里云,这里使用的是阿里云物联网平台,注意设置好三元组与topic,topic使用的是属性上报,注意填写好devicename
在这里插入图片描述

然后设置软串口,读取软串口的数据
在这里插入图片描述

最后传输上阿里云物联网平台,使用JSON格式上报,标识符应与功能定义的一致。
在这里插入图片描述

三、实验效果

硬件效果图:在这里插入图片描述

阿里云物联网平台查看数据:
在这里插入图片描述

可视化界面查看数据:
在这里插入图片描述

四、总结

本次实验很有参考价值,不同板子之间通过串口传输数据,各自实现不同的功能,很有实验价值,过程中也遇到一点坑,上报的数据格式必须与功能定义的一致,而mind+上传的数据格式默认带小数点,阿里云的int32型不支持小数点,必须换成float型才行。

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

王鸽子

你的鼓励都是我前进的动力!

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值