你的浏览器版本过低,可能导致网站不能正常访问!
为了你能正常使用网站功能,请使用这些浏览器。

[分享]WB-EIOT开发板实验例程

[复制链接]
wbeast 发布时间:2019-7-23 19:03
1、硬件平台:STM32F407
2、软件rtthread4.00版本
实验例程基于rtthread开发,充分利用rtt丰富组件和软件包,MQTT,JSON,LWIP,AT SOCKET ,file system等等。

TIM截图20190729163559.png


TIM截图20190729163616.png

链接:https://pan.baidu.com/s/1yM3QOZrPyBL9A382g0rkBg
提取码:clb3
PC端的远程温湿度显示工具
webwxgetmsgimg.jpg

PC端远程控制工具
webwxgetmsgimg (1).jpg


//移动安卓端的工具
webwxgetmsgimg (2).jpg

收藏 2 评论7 发布时间:2019-7-23 19:03

举报

7个回答
wbeast 回答时间:2019-7-25 14:33:29
                            阿里云IOT示例

本章实验演示连接阿里云IOT,实验运用了rtthreadMQTT软件包,tiny_sha1_hmac加密软件包,LWIP组件等等,用ENV工具可以获取软件包和组件,避免重复造轮子。以温湿度传感器为设备模型,用MQTT协议上传到阿里云物联网平台上,可以在物联网平台上查看温湿度数据。
在阿里云物联网套件申请步骤:

1、创建产品,如下图所示
1.png


2、输入产品名称和分类。
2.png
3、设置产品功能定义
3.png

4、输入产品功能名称,标识符,数据类型等等。本章实验是以温湿度设备为例子。

4.png
5.png
5、发布产品
6.png

6、添加设备

7.png


7、获取设备三元组信息: ProductKey, DeviceName, DeviceSecret
TIM截图20190725141910.png

8、打开程序,在MQTT.h中修改申请的设备三元组信息 : ProductKey, DeviceName, DeviceSecret。
9、编译无错误后,下载程序。
10、连接成功,如下图所示。

TIM截图20190725141125.png

11、查看数据
11.png




wangallenwang 回答时间:2019-7-26 11:37:09
wbeast 回答时间:2019-7-29 16:51:39
                                                                    json示例



JSON(JavaScript Object Notation, JS 对象简谱) 是一种轻量级的数据交换格式。它基于 ECMAScript (欧洲计算机协会制定的js规范)的一个子集,采用完全独立于编程语言的文本格式来存储和表示数据。简洁和清晰的层次结构使得 JSON 成为理想的数据交换语言。 易于人阅读和编写,同时也易于机器解析和生成,并有效地提升网络传输效率。

1、 打开env工具,选中JSON。保存后退出,输入:pkgs --update命令下载软件包,输入:scons –-targer=mkd5命令,编译工程。
TIM截图20190726160125.png
2、通过步骤1,就把JSON移植成功了,是不是很方便。

3、程序示例
  1. void json_examples(){
  2.         

  3.           cJSON * usr,*usr1,* Array,*usr2;
  4.            char *out;
  5.         
  6.   
  7.     usr=cJSON_CreateObject();   //创建JSON对象
  8.          cJSON_AddItemToObject(usr,"temp",cJSON_CreateNumber(22));  //在对象中添加数字
  9.          cJSON_AddItemToObject(usr,"humi",cJSON_CreateNumber(22));  //在对象中添加数字
  10.           out= cJSON_Print(usr);
  11.           rt_kprintf("\r\n%s\r\n",out);
  12.            free(out);//释放内存
  13.                  cJSON_Delete(usr);//删除JSON对象

  14.     usr=cJSON_CreateObject();   //创建JSON对象
  15.          cJSON_AddItemToObject(usr,"DeviceName",cJSON_CreateString("EIOT"));  //在对象中添加字符串类型参数
  16.          cJSON_AddItemToObject(usr,"DeviceValue",cJSON_CreateString("123456"));  //在对象中添加字符串类型参数
  17.           out= cJSON_Print(usr);
  18.           rt_kprintf("\r\n%s\r\n",out);
  19.           free(out);
  20.                  cJSON_Delete(usr);
  21.         
  22.         
  23.     usr=cJSON_CreateObject();   //创建JSON对象
  24.          cJSON_AddItemToObject(usr,"power",cJSON_CreateTrue()); //在对象中添加布尔类型参数
  25.          cJSON_AddItemToObject(usr,"power1",cJSON_CreateFalse());//在对象中添加布尔类型参数
  26.           out= cJSON_Print(usr);//json对象转换成字符串
  27.           rt_kprintf("\r\n%s\r\n",out);
  28.           free(out);//释放内存
  29.                 cJSON_Delete(usr);//删除JSON对象
  30.                
  31.                  //创建json数组对象
  32.                          Array = cJSON_CreateArray();
  33.                          usr1 = cJSON_CreateObject();
  34.                   cJSON_AddItemToArray(Array,usr1);
  35.                  cJSON_AddItemToObject(usr1,"temp",cJSON_CreateNumber(22));  //在对象中添加数字
  36.             cJSON_AddItemToObject(usr1,"humi",cJSON_CreateNumber(22));  //在对象中添加数字
  37.                   out= cJSON_Print(usr);//json对象转换成字符串
  38.             cJSON_Delete(usr);
  39.             rt_kprintf("\r\n%s\r\n",out);
  40.                          free(out);
  41.         

  42.         
  43.         
  44.            //json对象嵌套使用
  45.                    usr=cJSON_CreateObject();   //创建JSON对象
  46.                          Array = cJSON_CreateArray();
  47.                   cJSON_AddItemToObject(usr, "rows",Array );
  48.                          usr1 = cJSON_CreateObject();
  49.                          usr2 = cJSON_CreateObject();
  50.                   cJSON_AddItemToArray(Array,usr1);
  51.                          cJSON_AddItemToArray(Array,usr2);
  52.                                 
  53.                         cJSON_AddItemToObject(usr1,"power",cJSON_CreateTrue());//在对象中添加布尔类项参数
  54.             cJSON_AddItemToObject(usr1,"power1",cJSON_CreateFalse());
  55.          
  56.                   cJSON_AddItemToObject(usr2,"temp",cJSON_CreateNumber(22));  //在对象中添加数字
  57.             cJSON_AddItemToObject(usr2,"humi",cJSON_CreateNumber(22));  //在对象中添加数字
  58.          
  59.                   out= cJSON_Print(usr);//json对象转换成字符串
  60.             cJSON_Delete(usr);//删除JSON对象
  61.             rt_kprintf("\r\n%s\r\n",out);
  62.                          free(out);//释放内存
  63.         
  64. }

复制代码


4、实验现象,如下图所示。
TIM截图20190726160304.png



wbeast 回答时间:2019-7-30 09:34:55
另外开贴说明
wangallenwang 回答时间:2019-7-31 15:35:27
wangallenwang 回答时间:2019-8-14 14:45:15
generalcircuits 回答时间:2019-8-14 15:33:56
感谢分享,辛苦啦

所属标签

STM32团队

意法半导体微控制器和微处理器拥有广泛的产品线,包含低成本的8位单片机和基于ARM® Cortex®-M0、M0+、M3、M4、M33、M7及A7内核并具备丰富外设选择的32位微控制器及微处理器


最新内容

关于
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
意法半导体官网
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
官方最新发布
STM32N6 AI生态系统
STM32MCU,MPU高性能GUI
ST ACEPACK电源模块
意法半导体生物传感器
STM32Cube扩展软件包
关注我们
st-img 微信公众号
st-img 手机版