|
1.前言 对于一个物联网应用,远程监控设备状态、远程更新设备固件都是其要包含的典型基本功能。本示例在百度天工 IoT 平台和$ W2 F0 \2 g$ q% T2 ]1 }2 q7 { STM32F769 探索板上实现了上述功能,并有以下特性:' B: C: |' O1 ^( e+ V% b% K0 V
支持一键恢复出厂默认固件在本示例中,STM32F769DK 板可以通过板载以太网接口或者外接的 WIFI 模块连接到百度天工 IoT 平台,与其建立 MQTT 连接:将板上的 LED 灯状态、软件版本等信息上传到云端,并可接收云端下发的 LED 控制命令、 新固件版本和下载地址。根据接收到新固件下载地址,通过 HTTP 协议从对应的服务器下载新固件。下载完成后程序通过 LCD 屏向用户提示可用的新版本信息,用户可以通过用户按键启动新固件的升级。下载和升级过程支持固件完整性校验。 在此例程中,我们用到了百度 IoT 平台和对象存储(BOS)服务。首先需要在 IoT 平台上创建 MQTT 服务,百度 IoT 平台相当于 MQTT 服务器,STM32F769DK 板相当 MQTT 客户端。在本示例中,还用到了一个 PC 端工具 MQTT.fx,作为另一个 MQTT' h6 U1 J4 N0 f6 H) H8 S 客户端来向 STM32F769DK 板推送固件升级消息,接收 STM32F769DK 板发送到云端的消息并进行显示。 ; E' A5 w8 i9 K7 ~* Z6 S% W0 `" y9 R 远程下载的固件需要保存在百度云 BOS 服务器上,然后就可以获取到对应的下载链接。这个下载地址信息,通过 PC 上的 MQTT 客户端 MQTT.fx进行推送,STM32F769DK 板收到消息后,从百度的 BOS 服务器下载新固件。 本例程提供了 IAR 的工程。 2.系统框图 " J1 p8 e3 M4 z) g; l E" a/ w
图 1.通过有线连接到云端 $ B2 I C1 ~7 G% c
图 2.通过 wifi 连接到云端 ( a- b6 J* Q; c/ y3.存储区域划分 ( Z( m% w" W+ w n3 ^; K4 w 本示例用外部 QSPI Flash 保存从云端接收到的新固件和程序运行的状态。QSPI Flash 的功能区域划分如下:
. j5 ?2 t+ U; }! r 4.运行环境 4.1 硬件连接部分 需要的硬件: 1 k9 |: |! \" Y: d8 `4 j2 m
...! m) n* q, t! {1 d. D8 c 了解更多,请下载后阅读 下载地址1>> 下载地址2>> 更多实战经验>> 1 `+ L6 G7 t/ l( N% F4 o+ f+ ?0 g % W- Z( A# d7 V' P |
基于STM32F767通过cube配置:QSPI接口读写64M PSRAM+flash参考资料...
STM32F746G-DISCO移植lvgl9.0性能基准测试
STM32F745 USART1 Bootloader启动失败排查与解决的流程分析
STM32芯片命名规则
STM32 引脚到底有多少?为什么一个引脚能当好几个用?
入门嵌入式,为什么STM32是“优选起步”?
嵌入式-单片机-STM32 EXTI中断
STM32单片机进行除零运算,为何程序不崩溃?
STM32 LL为什么比HAL高效?
STM32时钟详解
微信公众号
手机版
http://www.stmcu.com.cn/Designre ... dec403b271092950739
这个链接无效了,请求给个能打开的网址,或说明一下去哪找,谢谢。