
STM32
文章平均质量分 73
小小柚的小小龙
谢谢关注,不定期分享干货!
展开
-
(纯干货)基于STM32F103RCT6的BootLoader和OTA升级
本文详细介绍了基于STM32F103RCT6的BootLoader设计与OTA升级实现。BootLoader作为系统启动的核心程序,负责初始化硬件并加载用户应用程序或执行固件更新。通过合理划分内部Flash区域,将BootLoader与应用程序分离,确保系统稳定运行。OTA升级功能利用Wi-Fi模块(如ESP8266)连接云平台,通过MQTT协议接收固件更新指令和数据。BootLoader在检测到更新标志后,将新固件写入备用区域,并在验证通过后切换到新固件运行。原创 2025-02-16 12:00:00 · 1158 阅读 · 0 评论 -
(纯干货)基于STM32F103RCT6的BootLoader和OTA升级之OTA升级的实现(九)
本文介绍了基于STM32F103RCT6的OTA升级实现,重点在于通过BootLoader和网络模块完成远程固件更新。STM32F103RCT6结合Wi-Fi模块连接到云平台(如阿里云),通过MQTT协议接收固件更新指令和新固件数据。BootLoader在设备启动时检查更新标志,若检测到新固件,将数据写入内部Flash的备用区域,并在完成后切换到新固件运行。该方案支持自动回退机制,确保升级失败时恢复到旧版本,保障系统稳定性。原创 2025-02-16 12:00:00 · 626 阅读 · 0 评论 -
(纯干货)基于STM32F103RCT6的BootLoader和OTA升级之B区代码的实现(八)
本文探讨了基于STM32F103RCT6的BootLoader和OTA升级功能中,APP应用程序代码的实现方法。在该方案中,STM32F103RCT6通过集成Wi-Fi模块与云平台(如阿里云)建立通信,实现远程固件升级。应用程序代码通过MQTT协议从云平台接收固件更新指令,并将新固件存储在内部Flash的指定区域。BootLoader在设备重启时检测到更新标志后,自动切换到新固件运行。该实现支持自动回退机制,确保升级失败时系统恢复到旧版本,保障设备的稳定性和可靠性原创 2025-02-16 12:00:00 · 350 阅读 · 0 评论 -
(纯干货)基于STM32F103RCT6的BootLoader和OTA升级之阿里云平台(七)
本文介绍了基于STM32F103RCT6的BootLoader和OTA升级功能,结合阿里云平台的实现方法。通过使用STM32F103RCT6和ESP8266模块,设备能够通过MQTT协议连接阿里云物联网平台,接收固件升级指令。OTA升级过程中,阿里云平台通过特定Topic向设备推送升级包信息,设备端BootLoader程序负责下载并写入新固件。原创 2025-02-15 12:00:00 · 968 阅读 · 0 评论 -
(纯干货)基于STM32F103RCT6的BootLoader和OTA升级之SecureCRT下载固件(六)
本文介绍了基于STM32F103RCT6的BootLoader和OTA升级功能,重点在于通过SecureCRT实现固件下载。BootLoader是系统启动时运行的程序,负责初始化硬件并加载用户应用程序。在OTA升级中,BootLoader通过串口接收由SecureCRT发送的固件数据,使用xmodem协议确保传输的可靠性。该方案支持远程固件更新,适用于嵌入式设备的远程维护和功能迭代原创 2025-02-15 12:00:00 · 889 阅读 · 0 评论 -
(纯干货)基于STM32F103RCT6的BootLoader和OTA升级之Bootloader的实现(五)
本文探讨了基于STM32F103RCT6的BootLoader实现及其在OTA升级中的应用。BootLoader是系统启动时运行的程序,负责加载和执行用户应用程序或进行固件更新。在STM32F103RCT6中,BootLoader通过内部Flash分区管理实现,将Flash分为BootLoader区和应用程序区。BootLoader启动后,会检查更新标志,若检测到新固件,将通过串口或网络模块下载并写入应用程序区。完成后,系统跳转至新固件运行。原创 2025-02-15 12:00:00 · 230 阅读 · 0 评论 -
(纯干货)基于STM32F103RCT6的BootLoader和OTA升级之网络模块的实现(四)
本文介绍了基于STM32F103RCT6的BootLoader和OTA升级功能中网络模块的实现。通过正点原子的ATK-MW8266D串口转wifi模块,STM32F103RCT6能够实现远程固件升级。在OTA升级过程中,用户程序定期通过HTTP请求获取云端服务器上的固件版本信息,若发现版本不一致,则将新固件下载地址写入Flash并设置更新标志。设备重启后,BootLoader读取固件地址,通过网络模块下载新固件并写入Flash,过程中进行CRC校验以确保数据完整性。原创 2025-02-14 12:00:00 · 351 阅读 · 0 评论 -
(纯干货)基于STM32F103RCT6的BootLoader和OTA升级之内部flash的分区(三)
本文介绍了基于STM32F103RCT6的BootLoader和OTA升级功能,重点在于内部Flash分区的设计与实现。通过合理规划Flash空间,将BootLoader和应用程序分别存储在不同区域,实现安全可靠的固件更新。具体而言,Flash被划分为BootLoader区(如0x08000000起始地址)和应用程序区(如0x08020000起始地址),并预留部分空间用于存储OTA标志和版本信息。该分区策略支持双区备份,确保升级失败时可回退,保障设备的稳定运行原创 2025-02-14 12:00:00 · 803 阅读 · 0 评论 -
(纯干货)基于STM32F103RCT6的BootLoader和OTA升级之内部flash的擦除与写入(二)
本文介绍了基于STM32F103RCT6的BootLoader和OTA升级功能,重点在于内部Flash的擦除与写入操作。STM32F103RCT6的内部Flash分为多个页,每页大小为2KB。在进行固件更新时,首先需要通过解锁Flash、擦除目标页(如使用FLASH_TYPEERASE_PAGES)来准备存储区域。随后,通过写入操作将新固件数据逐页写入Flash,确保数据完整性和存储稳定性。该技术广泛应用于BootLoader和OTA升级场景,支持远程固件更新,提升设备的可维护性和用户体验原创 2025-02-13 22:03:14 · 396 阅读 · 0 评论 -
(纯干货)基于STM32F103RCT6的BootLoader和OTA升级之DMA串口空闲中断的实现(一)
本文介绍了基于STM32F103RCT6的BootLoader和OTA升级功能,重点在于通过DMA串口空闲中断实现高效数据传输。BootLoader程序利用串口接收中断和DMA功能,实现固件的远程更新。通过配置USART的DMA通道,系统可在接收到空闲信号时触发中断,从而高效处理不定长数据。该方案适用于需要远程固件更新的嵌入式设备,如物联网节点和智能硬件,有效提升了设备的可维护性和用户体验原创 2025-02-13 22:01:38 · 642 阅读 · 0 评论