本文将介绍stm32如何通过WiFi来连接阿里云,上传数据和接收指令。要先与阿里云建立TCP连接,然后再通过MQTT协议交互。

大体流程:1、在阿里云网页上创建产品和设备;2、stm32通过WiFi连接云平台;3、MQTT连接阿里云;4、MQTT上传数据及接收指令并处理。

本文将以简单示例进行演示:上报温度、湿度、LED状态,接收LED指令并控制开关;

硬件:stm32f103c8t6、ESP8266 WiFi模块、DHT11温湿度模块、LED等;

一、创建产品和设备

1.1注册并登陆阿里云

若未注册阿里云账号,则需要先注册并登陆。

阿里云官网:阿里云-计算,为了无法计算的价值

1.2创建产品

登陆后,在阿里云首页,进入<控制台>(右上角)。

在控制台页面的左上角,依次选择<产品与服务>、<物联网>、<物联网平台>:

尚未开通需要先开通:

点击开通:

很遗憾,阿里云物联网平台已不能新购了,所以新用户也无法开通使用了。

只用能已开通的老账号来演示了。

创建产品如下:

添加功能定义:

到此,产品已创建完成。

注:需记下标识符和数据类型,后续上传或接收数据时用到。

1.3创建设备

创建产品后,还需添加设备,点出添加产品:

弹框输入信息:

添加成功:

在设备列表中会显示刚创建的设备:

二、全程快速适配

在提供的例程中,通过修改WiFi配置、阿里云产品设备信息可快速连接并使用。

2.1查看阿里云参数

在设备中,点击刚创建的设备,进入设备详细信息,可查看到:

需要的就是ProductKey、DeviceName、DeviceSecret这几个参数。

2.2配置参数修改

打开stm32工程,在config.h中分别配置wifi账号和密码,阿里云参数等,如下红框选中部分:

其中,AP热点即WiFi账号密码,第2项阿里云的产品和设备参数,设备属性是创建产品时添加的属性。

2.3连接云平台和交互

2.3.1连接云平台

烧录程序运行后,LOG如下:

在阿里云网页上也可见设备已上线:

2.4上传数据

点进设备详情的<物模型数据>,可见上传的数据:

2.5 下属指令

点击<在线调试> ,设置LED状态,点击设置:

LOG可见,led设置的状态为1,即点亮:

在开发板上也可见LED被打开:

到此,上传和下发都调通了。

例程在如下链接:

获取资料/指导答疑/技术交流/选题/帮助,请点链接:
https://gitee.com/zengzhaorong/share_contact/blob/master/stm32.txt
 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如若转载,请注明出处:http://www.pswp.cn/bicheng/94346.shtml
繁体地址,请注明出处:http://hk.pswp.cn/bicheng/94346.shtml
英文地址,请注明出处:http://en.pswp.cn/bicheng/94346.shtml

如若内容造成侵权/违法违规/事实不符,请联系英文站点网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

北京-测试-入职甲方金融-上班第三天

今日上班时间9-20.18&#xff0c;再加42分钟就可以拿到75块钱了&#xff0c;但我想回家&#xff0c;所以下班今天上午有人事举办的入职培训&#xff0c;下午有业务培训&#xff0c;培训完领导给我安排了两个需求。慌死&#xff0c;吓死&#xff0c;我都不懂&#xff0c;业务和工…

Java基础第2天总结

使用switch时注意事项&#xff1a;表达式类型只能是byte、short、int、char,JDK5开始支持枚举&#xff0c;JDK7开始支持String&#xff0c;不支持double、float、long(精确度问题&#xff0c;小数有点不精确)。case给出的值不允许重复&#xff0c;且只能是字面量&#xff0c;不…

鸿蒙开发中的List组件详解

目录 引言 1.List组件基础 2.List接口参数 1.space 2.initialIndex 3.scroller 3.ListView的属性 1.listDirection 2.lanes 3.divider 4.scrollBar 4.布局与约束 5.ListItem生命周期 1.使用ForEach创建ListItem 2.使用LazyForEach创建ListItem 3…

2026界计算机专业毕业的有福了!(开题报告任务书)

开题报告 我们以基于Java的婚纱店管理系统为案例进行指导。 任务书&#xff1a; 首先是毕设的立题依据&#xff0c;这个主要描写一些简洁大体的大白话&#xff0c;描述一下你为什么要做这个题目的毕设。 那就需要你描述一下现阶段社会面婚纱店的运营情况&#xff0c;写一些…

安全、高效、可靠的物理隔离网络安全专用设备———信刻光盘安全隔离与文件单向导入系统!

着各种数据传输、储存技术、信息技术的快速发展&#xff0c;保护信息安全是重中之重。军工企业、政府、部队及企事业单位等利用A网与B网开展导入/导出相关工作已成为不可逆转的趋势。针对于业务需要与保密规范相关要求&#xff0c;涉及重要秘密信息&#xff0c;需做到完全的物理…

JetPack 与 PyTorch 版本对应及资源详情

下载链接 JetPack 版本适配 PyTorch 版本发布日期可下载资源&#xff08;.whl 安装包 / 文档&#xff09;JP 6.1PyTorch 2.5.0a0&#xff08;构建号&#xff1a;872d972e41.nv24.08.17622132&#xff09;2024/10/01- torch-2.5.0a0872d972e41.nv24.08.17622132-cp310-cp310-li…

【c++进阶系列】:万字详解多态

&#x1f525; 本文专栏&#xff1a;c &#x1f338;作者主页&#xff1a;努力努力再努力wz &#x1f4aa; 今日博客励志语录&#xff1a; 你以为自己在孤独地爬坡吗&#xff1f;看看身后吧——那些被汗水浸湿的脚印&#xff0c;早已连成一道向上的阶梯 ★★★ 本文前置知识&am…

AI+预测3D新模型百十个定位预测+胆码预测+去和尾2025年8月23日第168弹

从今天开始&#xff0c;咱们还是暂时基于旧的模型进行预测&#xff0c;好了&#xff0c;废话不多说&#xff0c;按照老办法&#xff0c;重点8-9码定位&#xff0c;配合三胆下1或下2&#xff0c;杀1-2个和尾&#xff0c;再杀4-5个和值&#xff0c;可以做到100-300注左右。(1)定位…

分布式搜索(Elasticsearch)深入用法

目录 数据聚合 聚合的种类 DSL实现聚合 桶聚合 度量聚合 RestAPI实现聚合 多条件聚合 自动补全 拼音分词器 自定义分词器 自动补全查询 实现搜索框自动补全 数据同步 数据同步思路分析 实现elasticsearch与数据库数据同步 集群 搭建ES集群 集群脑裂问题 集群…

java:接口与实现类

1. Java 基础层面接口&#xff08;Interface&#xff09; 只是方法的定义/规范&#xff0c;里面没有真正的逻辑。例如&#xff1a;public interface IBookService {boolean save(Book book); }&#x1f449; 这里只说明了&#xff1a;我要有一个 save 方法&#xff0c;但“怎么…

Chrome 插件开发实战:从入门到进阶

1.1 Chrome 插件的魅力与应用场景Chrome 插件是增强 Chrome 浏览器功能的得力助手&#xff0c;能实现广告拦截、密码管理、标签管理等实用功能。在日常办公中&#xff0c;我们可以借助插件提升效率&#xff0c;如自动填充表单、快速保存网页内容&#xff1b;在浏览网页时&#…

通过官方文档详解Ultralytics YOLO 开源工程-熟练使用 YOLO11实现分割、分类、旋转框检测和姿势估计(附测试代码)

目录 前言&#xff1a; 1.了解ultralytics工程与yolo模型 1.1 yolo11可以为我们做些什 1.2 yolo11模型的高性能 1.3 对于yolo11一些常见的问题 1.3.1 YOLO11 如何以更少的参数实现更高的精度&#xff1f; 1.3.2 YOLO11 可以部署在边缘设备上吗&#xff1f; 2. 深入了解y…

vue实现小程序oss分片上传

随着小程序越来越普及,小程序上传文件必不可少,那么上传的文件大小就不可控了,小则几mb,大到好几百mb,小文件还可以,但是一到超过200mb或稍微再大些的小程序就很容易上传失败,导致功能不能继续进行。以下我们就来解决这个问题,将大文件实现分片上传 温馨提示,不要看内…

14.Shell脚本修炼手册--玩转循环结构(While 与 Until 的应用技巧与案例)

while 循环和 until 循环的应用实践 文章目录while 循环和 until 循环的应用实践当型和直到型循环&#xff1a;两种 "重复" 的逻辑while 循环&#xff1a;满足条件就继续until 循环&#xff1a;不满足条件就继续基础示例&#xff1a;从简单场景学用法示例 1&#xff…

chromadb使用hugging face模型时利用镜像网站下载注意事项

chromadb默认使用sentence-transformers/all-MiniLM-L6-v2的词嵌入&#xff08;词向量&#xff09;模型&#xff0c;如果在程序首次运行时&#xff0c;collection的add或query操作时如果没有指定embeddings或query_embeddings&#xff0c;程序会自动下载相关嵌入向量模型&#…

基于大模型的对话式推荐系统技术架构设计

注&#xff1a;此文章内容均节选自充电了么创始人&#xff0c;CEO兼CTO陈敬雷老师的新书《GPT多模态大模型与AI Agent智能体》&#xff08;跟我一起学人工智能&#xff09;【陈敬雷编著】【清华大学出版社】 清华《GPT多模态大模型与AI Agent智能体》书籍配套视频课程【陈敬雷…

第1章 React组件开发基础

在掌握React开发之前,我们需要先建立扎实的组件开发基础。这些基础知识不仅影响你的开发效率,更决定了应用程序的性能、可维护性和团队协作的顺畅程度。 本章将深入探讨React组件开发的核心技巧,从JSX语法优化到组件架构设计,帮你建立正确的React开发思维模式。 🗂️ 本…

【yocto】Yocto Project 配置层(.conf)文件语法详解

【加关注&#xff0c;不迷路&#xff0c;持续输出中...】Yocto Project 是一个开源的嵌入式 Linux 系统构建框架&#xff0c;其核心是通过元数据&#xff08;Metadata&#xff09;来定义如何构建系统。这些元数据主要包括配方&#xff08;.bb / .bbappend&#xff09;、配置&am…

知识蒸馏 Knowledge Distillation 序列的联合概率 分解成 基于历史的条件概率的连乘序列

知识蒸馏 Knowledge Distillation 序列的联合概率 分解成 基于历史的条件概率的连乘序列 flyfish 代码实践 论文 Generalized Knowledge Distillation (GKD) On-Policy Distillation of Language Models: Learning from Self-Generated Mistakes 自回归分解 将 “序列的联合…

React15.x版本 子组件调用父组件的方法,从props中拿的,这个方法里面有个setState,结果调用报错

在React 15.x中&#xff0c;子组件通过props调用父组件包含setState的方法时出现错误&#xff0c;最常见的原因是父组件方法的this指向丢失&#xff0c;导致调用setState时出现Cannot read property setState of undefined之类的错误。 核心原因 React类组件的方法默认不会绑定…