百问网7天物联网smarthome学习笔记7之开发板与阿里云物联网平台设备通信

阿里云物联网平台服务器搭建

  • 官网https://www.aliyun.com/,注册账号
  • 控制台找到物联网平台
  • 物联网平台开通公共实例
  • 公共实例设备管理选择产品
  • 创建产品
  • 添加设备

MQTTX与阿里云物联网平台设备通信

  • 将网站中的MQTTX连接参数页中的clientid、username、password、port等填入MQTTX的新建连接页面中,建立连接
  • MQTT x订阅物联网平台的产品topic
  • 物联网平台的设备发布topic消息
  • MQTT x向设备发布topic2的消息

业务逻辑:

1、MQTT客户端(wifi模块)连接服务器、订阅相关topic

2、按键按下后发布topic

3、处理订阅topic的消息,判断到是控制LED的则去控制LED亮灭

内存区域及对应的作用

内存区域 作用
代码区 存放函数体的二进制代码
常量区 存放字符串常量如char *c=“hello”,全局const变量
全局数据区 static修饰的局部和全局变量;全局变量。初始化的全局数据和未初始化的全局数据存放在不同位置
堆区 由malloc函数分配的内存块
栈区 存放局部变量,函数参数
  • 系统堆:在stm32启动文件中定义大小,使用malloc()和free()来分配和释放。

  • FreeRTOS中的堆区配置:通过FreeRTOSConfig.h中的configTOTAL_HEAP_SIZE进行配置,可以使用pvPortMalloc()和vPortFree()来分配和释放,还用于任务、队列等创建,任务中定义的局部变量从任务栈中申请,所以归根结底这些局部变量的位置也在FreeRTOS的堆上。

单任务方案和freertos方案都可以实现该项目,为何要用FreeRTOS呢

1、因为本项目逻辑简单,因而用一个任务就可以完成

2、物联网项目通常涉及多种传感器,多条数据流,用RTOS能够更好的应对这些复杂应用

3、Paho MQTT已经为我们实现了基于FreeRTOS的C库,可以节约时间

本文章来源于互联网,如有侵权,请联系删除!原文地址:百问网7天物联网smarthome学习笔记7之开发板与阿里云物联网平台设备通信

相关推荐: 中国电信天翼物联网平台CTWing学习笔记(1)——设备接入(TCP协议)

一、平台简介 天翼物联网平台(AIoT) 是中国电信倾力打造的智能终端汇聚、应用开发运行服务和轻量级应用提供的物联网平台,旨在降低物联网应用开发的准入门槛,降低智能硬件的接入门槛,提供端到端的解决方案,服务于终端开发商、个人极客开发者、能力提供商、应用开发商以…