阿里云物联 平台体验(NetGadgeteer+C#篇)

目前对接阿里云物联 平台有多种软件和硬件,可以有多种不同语言来实现对接,比如c/c++JavaJSPythonC#等等,不过C#版本只有PC对接云平台的代码,嵌入式的目前还没有看到,所以本篇文章是基于STM32F429芯片,采用C#语言对接阿里云物联 平台高级版。

下面是对接阿里云物联 平台的硬件,.Net Gadgeteer套件,有14个不同接口,可以对接近百种模块。

我们今天选用的是温湿度模块,LED模块,USB模块和主板模块,如下图所示:

1、 USB Device模块插入2#接口

2、 DHT11模块插入14#接口

3、 LED模块插入12#接口

4、 以太 模块插入4#接口

第一步:我们需要在阿里云物联 平台创建一个产品及对应设备

和阿里云官方示例不一样的是,我们额外增加了一个属性LED,具备读写能力,枚举型变量,0-表示关灯,1-表示开灯

这个定义好后,我们创建设备,并且获取设备的三元组。

第二步: 基于官方MQTTC#代码库M2Mqtt.NetMf42嵌入式版本,实现Alink协议。

  1.    上传数据到云端

byte[] bytData = new byte[4];

float T = 0;

float H = 0;

int ret = gs.IOControl((int)(6*16+11)); //PG11

if (ret != -1)

{

    bytData[0] = (byte)(ret & 0xFF);

    bytData[1] = (byte)(ret >> 8 & 0xFF);

    bytData[2] = (byte)(ret >> 16 & 0xFF);

    bytData[3] = (byte)(ret >> 24 & 0xFF);

 

    H = Byte2Float(bytData[0], bytData[1]);

    T = Byte2Float(bytData[2], bytData[3]);

    Debug.Print(“H = “ + H.ToString() + ” T = “ + T.ToString());

 

    string payload_json = “{“ +

“”id””: “” + DateTime.Now.Ticks + “”

    “”””humidity””:”” + H + “”

声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!

上一篇 2018年11月16日
下一篇 2018年11月16日

相关推荐