Forráskód Böngészése

[update] add README.md

Signed-off-by: chenyong <1521761801@qq.com>
chenyong 7 éve
szülő
commit
2ae22f30a2
1 módosított fájl, 101 hozzáadás és 2 törlés
  1. 101 2
      README.md

+ 101 - 2
README.md

@@ -1,2 +1,101 @@
-# onenet
-China Mobile OneNet cloud SDK for RT-Thread
+# OneNET
+
+## 1. 介绍
+
+[OneNET](https://open.iot.10086.cn/) 平台是一个基于物联网产业打造的生态平台,可以适配多种网络环境和协议类型,例如MQTT、HTTP、LWM2M等,方便用户数据的管理和设备控制。
+
+该组件包是 RT-Thread 系统针对 OneNET 平台连接的适配,通过这个组件包可以让设备在 RT-Thread 上使用 MQTT 协议连接 OneNet 平台,完成数据的接受和发送、以及设备的控制等功能,更多 OneNET 平台信息可查看 [OneNET 文档中心](https://open.iot.10086.cn/doc)。
+
+### 1.1 目录结构
+
+| 名称 | 说明 |
+| ---- | ---- |
+| inc | 头文件目录 |
+| src | 源文件目录 |
+| samples | 例程文件目录 |
+| port | 用户移植代码目录 |
+| LICENSE |  OneNET package 许可证 |
+
+### 1.2 许可证
+
+OneNET package  遵循 GUN GPL 许可,详见 `LICENSE` 文件。
+
+### 1.3 依赖
+
+- RT_Thread 3.0+
+- [paho-mqtt](https://github.com/RT-Thread-packages/paho-mqtt.git)
+- [webclient](https://github.com/RT-Thread-packages/webclient.git)
+- [cJSON](https://github.com/RT-Thread-packages/cJSON.git)
+
+## 2. 获取方式
+
+使用 `OneNET package` 需要在 RT-Thread 的包管理中选中它,具体路径如下:
+
+    RT-Thread online packages
+        IoT - internet of things  --->
+            [*] OneNET: China Mobile OneNet cloud SDK for RT-Thread
+            [*]   Enable OneNET sample
+            [*]   Enable support MQTT protocol 
+            (/test_topic) mqtt subtopic
+            (device id) device id
+            (api key) api key
+            (product id) product id
+            (auth info) auth info
+                onenet version (latest)  --->
+
+`Enable OneNET sample`:使能使用示例代码;  
+`Enable support MQTT protocol`:使能 MQTT 协议连接 OneNET;  
+`mqtt subtopic`:自定义设备端连接 MQTT 协议时`订阅的主题`信息;  
+`device id`:配置云端创建设备时获取的`设备ID`(具体使用和获取方式可参考 OneNET 文档中心[平台概述](https://open.iot.10086.cn/doc/art401.html#97)和[硬件接入](https://open.iot.10086.cn/doc/art454.html#107));  
+`api key`:配置云端创建设备时获取的 `APIkey`;  
+`product id`:配置云端创建产品时获取的`产品ID`;  
+`auth info`:配置云端创建产品时`用户自定义的鉴权信息`(每个产品的每个设备唯一);  
+`onenet version`:配置 OneNET 组件包为最新版 `latest`;   
+
+配置完成后让 RT-Thread 的包管理器自动更新,或者使用 pkgs --update 命令更新包到 BSP 中。
+
+## 3. 移植
+
+### 3.1 MQTT 接受数据处理函数实现
+```
+int onenet_port_data_process(char *recv_data, rt_size_t size)
+```
+该函数用于设备 MQTT 连接 OneNET 云端之后,对 OneNET 云端下发的数据进行处理,需要用户自定义处理数据方式。
+
+## 4. 使用方式
+
+### 4.1. 示例列表
+
+| 名称 | 说明 |
+| ---- | ---- |
+| rt_onenet_sample.c | 数据上传 OneNET 云端示例 |
+
+### 4.2. 运行示例
+
+该示例用于设备连接 OneNET 云端后,需要`联网成功`之后 msh 中执行 `onenet_send_data_cycle` 命令,可5秒一次循环发送数据流名为 `temperature` 的随机数据到 OneNET 云端,云端建立[数据流模板](https://open.iot.10086.cn/doc/art402.html#97)后即可实时查看上传数据信息。具体过程如下:
+
+    msh />onenet_send_data_cycle
+    Enter mqtt_connect_callback!
+    [MQTT] ipv4 address port: 6002
+    [MQTT] HOST = '183.230.40.39'
+    OneNET MQTT is startup!
+    OneNET cloud(V0.1.0) initialize success.
+    [MQTT] Subscribe #0 /test_topic OK!
+    Enter mqtt_online_callback!             //初始化完成,设备上线成功
+    buffer : {"temperature":8}
+    buffer : {"temperature":56}
+    buffer : {"temperature":19}             
+    buffer : {"temperature":11}             //循环发送数据到 OneNET 云端
+    .....
+
+
+## 5. 注意事项
+
+- 在 menuconfig 选项中选择 OneNET package 的 `latest` 版本;
+- 在 menuconfig 选项中配置的 `device id`、`api key`、`product id`、`auth info` 等信息时需要和 OneNET 云端新建产品和新建设备时获取的信息一致;
+- 初始化 OneNET package 之前需要设备`联网成功`;
+
+## 6. 开发资源
+
+- [OneNET 文档中心](https://open.iot.10086.cn/doc)
+