去年,RT-Thread发布了RT-Thread Studio初版RT-ThreadStudio的使用体验,经过不断更新迭代之后,来到了V1.1.0,咱也来拥抱一下新版本。

本篇笔记咱们以接入OneNet云平台实验来实操一下:使用RT-Thread Studio进行配置生成相关代码,连接OneNET云平台并与云平台进行数据交互。

1、创建工程

咱们的实验平台为小熊派开发板,其MCU型号为STM32L431RCT6。我们基于芯片、RT-Thread Master版本的4.0.2:

2、添加at_device软件包

因为要上云,所以必须要有联网媒介,这里我们使用的是ESP8266,因此可以借助at_device软件包:

最后,记得保存RT-Thread Settings文件。

小熊派使用LPUART1与ESP8266相连,需要在board.h中添加LPUART1的相关宏:

为了之后能更好的输入命令,这里我们有必要把主函数里打印输出的语句屏蔽掉:

这时候,下载运行可能会出现某个AT命令找不着,这是因为ESP8266的固件过低的原因,可以参考使用at_device软件包通过ESP8266连接到网络这篇文章升级ESP8266的固件。

下载,运行程序。连接WiFi成功:

3、注册OneNet账号、创建产品、设备

OneNET云平台的使用与其它云平台的使用类似,很简单,这里不过多的演示。具体步骤可阅读:

https://open.iot.10086.cn/doc/multiprotocol/book/get-start/product&device/product-create.html

我们创建的产品如:

至于设备的创建可根据OneNET软件包的使用而选择创建与不创建。有两种实验方法:

1、OneNET云平台创建设备,OneNET软件包绑定云平台创建的设备的设备ID及设备鉴权信息等信息。

2、OneNET云平台不创建设备,OneNET软件包负责注册设备,需要用到云平台的设备注册码。

这里我们选择第一种实验方法:在云平台上创建设备。最终我们需要提供如下云平台的数据给OneNET软件包使用:

4、添加OneNET软件包:

同上面添加at_device软件包的方法类似。这里需要对OneNET软件包进行一些配置,需要配置的信息就是我们云平台产品、设备的一些信息:

5、与云平台进行数据交互

使用RT-Thread Studio配置完相关代码之后就可以下载、运行程序了。

在shell终端下,输入Tab键可以查看得到一些导出的命令,可以看得到有几个与OneNET相关的命令。我们可以使用这几个命令进行测试。

(1)往云端传数据

这些数据不是由传感器采集到的,而是模拟出来的一些数据。可以在云端看到设备终端传过来的数据:

(2)云端往下发数据

同样的,云端也可以往下发数据,比如云端发送一串字符串:

Hello Bear Pi, I am OneNet=============

设备端收到的数据如:

可见,RT-Thread Studio给我们提供了很大的便利。我们本次实验中只是简单地通过RT-Thread Studio图形化配置就可以完成一个小实验。另外,在享受便利的同时,我们也很有必要一层一层地扒开进行学习,以便在遇到问题时可以快速定位问题。


我的个人博客:https://www.lizhengnian.cn/

我的微信公众号:嵌入式大杂烩

我的CSDN博客:https://blog.csdn.net/zhengnianli

【RT-Thread笔记】OneNet软件包的使用的更多相关文章

  1. Thread笔记

    Thread笔记 Thread——fork:https://www.cnblogs.com/noonjuan/diary/2019/08/03/11296217.html Thread——multip ...

  2. RT Thread 通过ENV来配置SFUD,操作SPI Flash

    本实验基于正点原子stm32f4探索者板子 请移步我的RT Thread论坛帖子. https://www.rt-thread.org/qa/forum.php?mod=viewthread& ...

  3. STM32 + RT Thread OS 学习笔记[二]

    串口通讯例程 通过上面的练习,对STM32项目开发有了一个直观印象,接下来尝试对串口RS232进行操作. 1.   目标需求: 开机打开串口1,侦听上位机(使用电脑串口测试软件)发送的信息,然后原样输 ...

  4. STM32 + RT Thread OS 学习笔记[三]

    RTGUI 据说RTGUI是多线程的,因此与RT-Thread OS的耦合度较高,有可能要访问RT-Thread的线程控制块.如果要移植到其它OS,估计难度较大.目前还处于Alpha状态,最终将会包含 ...

  5. STM32 + RT Thread OS 学习笔记[四]

    1.  补注 a)      硬件,打通通讯通道 若学习者购买了学习板,通常可以在学习板提供的示例代码中找到LCD的相关驱动代码,基本上,这里的驱动的所有代码都可以从里面找到. 从上面的示意图可见,M ...

  6. 【Python学习】Thread笔记(1)

    Python学习笔记 - Thread(1) 标签(空格分隔): python from threading import Thread num = 2000 id_list = [] def do_ ...

  7. STM32 + RT Thread OS 串口通讯

    1.   创建项目 a)   禁用Finsh和console b)   默认情况下,项目文件包含了finsh,它使用COM1来通讯,另外,console输出(rt_kprintf)也使用了COM1.因 ...

  8. linux笔记:软件包管理-软件包简介

    软件包分类: 1.源码包: 2.二进制包(在centos里就是RPM包.和源码包的区别在于已经经过编译.) 源码包的优点和缺点: RPM包的优点和缺点:

  9. python的线程thread笔记

    python的线程是用thread和threading来实现的.其中利用threading会更好,因为thread没有线程保护,当主线程退出了之后,子线程也会被强行退出.threading支持守护线程 ...

随机推荐

  1. 学习Vue第四节,v-model和双向数据绑定

    Vue指令之v-model和双向数据绑定 <!DOCTYPE html> <html> <head> <meta charset="utf-8&qu ...

  2. Qt线程池

    说明 Qt中可以有多种使用线程的方式: 继承 QThread,重写 run() 接口: 使用 moveToThread() 方法将 QObject 子类移至线程中,内部的所有使用信号槽的槽函数均在线程 ...

  3. 【HBase】HBase和Hue的整合

    目录 一.修改hue.ini配置文件 二.启动HBase的thrift server服务 三.启动Hue 四.页面访问 一.修改hue.ini配置文件 cd /export/servers/hue-3 ...

  4. CF#135 D. Choosing Capital for Treeland 树形DP

    D. Choosing Capital for Treeland 题意 给出一颗有方向的n个节点的树,现在要选择一个点作为首都. 问最少需要翻转多少条边,使得首都可以到所有其他的城市去,以及相应的首都 ...

  5. dp规划之矩阵连乘问题

    问题描述:给定n个矩阵{A1,A2,...,An},其中Ai与Ai+1是可乘的,我们要计算这n个矩阵的最少计算次数.  将多个矩阵连乘抽象为最后一次计算即两个矩阵相乘. public static v ...

  6. [hdu3572]最大流(dinic)

    题意:有m台机器,n个任务,每个任务需要在第si~ei天之间,且需要pi天才能完成,每台机器每天只能做一个任务,不同机器每天不能做相同任务,判断所有任务是否可以做完. 思路: 把影响答案的对象提取出来 ...

  7. [zoj3632]线段树的应用

    题意:f[i] = min(f[i+L]~f[i+R]) + x,计算f数组.从大到小计算即可,用线段树维护一下. #pragma comment(linker, "/STACK:10240 ...

  8. vue项目中使用bpmn-流程图xml文件中节点属性转json结构

    内容概述 本系列“vue项目中使用bpmn-xxxx”分为七篇,均为自己使用过程中用到的实例,手工原创,目前陆续更新中.主要包括vue项目中bpmn使用实例.应用技巧.基本知识点总结和需要注意事项,具 ...

  9. 使用 PyCharm 添加 Django 项目

    一.前置准备(PyCharm与Python的下载,已有的跳过) 1.首先下载PyCharm 地址:http://www.jetbrains.com/pycharm/ 2.然后下载Python 地址:h ...

  10. 使用GitHub的API实现文件上传--李渣渣(lizaza.cn)

    最近搭建了一个自己的博客网站和一个在线图片格式转换工具,经常写博客的时候需要上传图片,在线转换工具也需要一定的空间来临时存放图片文件.服务器的存储空间又比较有限,于是就想着将图片存储的GitHub上, ...