去年,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. Synchronized 和 ReentrantLock (Lock )的区别

    原始构成 Synchronized 是关键字,属于JVM层面,底层是通过 monitorenter 和 monitorexit 完成,依赖于 monitor 对象来完成.由于 wait/notify ...

  2. 201771030125-王英雪 实验一 软件工程准备一<构建之法与博客首秀>

    项目 内容 班级博客 点我呀! 作业要求 看这里! 课程学习目标 提出三个问题并以写博客的形式记录下来 参考文献 现代软件工程讲义 三个问题 问题一:软件工程究竟是什么? 在现代软件工程讲义一书中给出 ...

  3. 王颖奇 20171010129《面向对象程序设计(java)》第十六周学习总结

    实验十六  线程技术 实验时间 2018-12-8 理论部分: 并发⚫ 线程的概念⚫ 中断线程⚫ 线程状态⚫ 多线程调度⚫ 线程同步 1.线程的概念 程序是一段静态的代码,它是应用程序执行的蓝本. 进 ...

  4. 【FPGA篇章一】FPGA工作原理:详细介绍FPGA实现编程逻辑的机理

    欢迎大家关注我的微信公众账号,支持程序媛写出更多优秀的文章 FPGA(Field Programmable Gate Array),即现场可编程逻辑门阵列,它是作为专用集成电路(ASIC)领域中一种半 ...

  5. train loss与test loss结果分析/loss不下降

    train loss与test loss结果分析 train loss 不断下降,test loss不断下降,说明网络仍在学习; train loss 不断下降,test loss趋于不变,说明网络过 ...

  6. FOC 电流采样方案对比(单电阻/双电阻/三电阻)

    如果本文帮到了你,帮忙点个赞: 如果本文帮到了你,帮忙点个赞: 如果本文帮到了你,帮忙点个赞: 创作不易 谢谢支持 文章目录 1 电流采样的作用 2 硬件架构 3 采样关键 4 采样方案 5 三电阻采 ...

  7. QtCreator MSVC 搭建 Debugger

    QtCreatorForWindows搭建Debugger QtCreator for windows选择mingw或者msvc: qt-opensource-windows-x86-msvc2015 ...

  8. [hdu3336]kmp(后缀数组)

    题意:求字符串s的所有前缀出现次数之和. http://www.cnblogs.com/jklongint/p/4446117.html 思路:用kmp做,简单且效率高.以前缀结尾的位置分类,令dp[ ...

  9. 1025 PAT Ranking (25分) 思路分析 +满分代码

    题目 Programming Ability Test (PAT) is organized by the College of Computer Science and Technology of ...

  10. Web_python_template_injection

    0x01 pthon模板注入 判断是否为模板注入 paload http://124.126.19.106:34164/{{1+1}} //如果里面的值被执行了,那么存在模板注入 //调用os模块的p ...