关闭
搜索
搜索
本版
帖子
用户
热搜:
程序员
简洁模式
高级模式
用户组: 游客
消息
提醒
新听众
我关注的
帖子
道具
勋章
任务
设置
退出
请
登录
后使用快捷导航
没有帐号?
立即注册
设为首页
收藏本站
开启辅助访问
切换到窄版
登录
or
立即注册
快捷导航
搜索
首页
论坛
BBS
MCU单片机技术
程序员交流
五分钟教你轻松选择适合DFU的微控制器
[复制链接]
作者:
id小骆
版块:
›
MCU单片机技术
›
stm
发布时间:
2020-3-22 04:24:09
1107
0
返回列表
id小骆
当前离线
中级会员
中级会员, 积分 266, 距离下一级还需 234 积分
中级会员
中级会员, 积分 266, 距离下一级还需 234 积分
积分
266
发消息
楼主
电梯直达
id小骆
发表于 2020-3-22 04:24:09
|
只看该作者
|
倒序浏览
|
阅读模式
几乎所有的嵌入式系统都需要能够在现场更新其固件,从而添加新特性或修复漏洞。然而,固件现场更新可能会颇具挑战性,因为开发人员必须编写自己的引导程序或从第三方元器件供应商处购买引导程序。
有一个较为简单的方法。本文将介绍如何使用很多微控制器都会内置但通常会被忽视的设备固件更新 (DFU) 功能。
固件更新选项从头开始开发引导程序并非易事。开发人员需要解析他们的闪存空间,以便多个应用可以共存。
然后,他们还需要开发几种方法在不使用编程工具的情况下将其编译的二进制程序转移到微控制器中。
这需要他们开发自己的通信协议或者需要添加外部存储器以存储新映像而增加了系统的复杂性。他们还要增加其微控制器上的内存容量。
同样地,软件本身也会变复杂,因为引导程序需要设置系统状态及确定跳转到应用代码是否安全。
DFU 已经普遍使用,这使得一些微控制器供应商(如 STMicroelectronics)甚至都提供了执行硬编码到其 ROM 中的更新所需的软件。那些没有提供的,通常会提供如何支持 DFU 的示例代码。
选择适合 DFU 的微控制器支持 DFU 的最简单方法是选择一个已经在其 ROM 中包含 DFU 的微控制器,如 STMicroelectronics 的 STM32 IoT Discovery 节点和 STM32F429 Discovery 套件上的设备。
STM32 IoT Discovery 节点是一种低成本开发板,设计用作 IoT 传感器节点。该开发板包括几个不同的接口,用于连接 Wi-Fi 和蓝牙等板。
让人感兴趣的是,板载 STM32L475 为开发人员提供在设计用于连接互联网的设备上测试和使用 DFU 功能的能力。
对于只想在独立的正常设备上测试 DFU 的开发人员来说,STM32F429 Discovery 套件是 STM32F4 系列微控制器的知名、低成本开发套件。我们来讨论开发人员如何着手开始在这些微控制器上测试 DFU。
一个简单的 DFU 示例每个微控制器访问 DFU 的方式都不同。通过一个简单的示例来看一看开发人员如何在运行 STM32L475 MCU 的设备上更新其固件。
如前所述,STM32 微控制器包括内置到其 ROM 中的 DFU 引导程序。要访问该引导程序,开发人员需要在 MCU 启动时拉动其中一个 BOOT 引脚将其接地。BOOT 引脚控制 MCU 启动时所处的模式,如从闪存、RAM 中启动,或者我们首选的 DFU USB 模式。(更多详细内容请点击阅读原文)
本帖子中包含更多资源
您需要
登录
才可以下载或查看,没有帐号?
立即注册
收藏
0
相关帖子
•
21个硬件分析和基准压力测试的软件
•
Python编程语言知多少?
•
AMD推出v6合订版Linux补丁以更好地应对PSF预测性存储转发安全隐患
•
java013:JDK,JRE,JVM之间的关系
•
Rust引入Linux内核开发?Google:支持!
•
第40天.计算机病毒
•
2021最新100GJava学习资料,从入门到精通!
•
欲学鸿蒙必先懂Linux:逐项分析Linux目录树的5类18项构成
•
作为一个开发者,如何更好地学习鸿蒙?
•
MIKROE的新SiBRAINMCU开发标准
回复
使用道具
举报
返回列表
高级模式
B
Color
Image
Link
Quote
Code
表情
@朋友
您需要登录后才可以回帖
登录
|
立即注册
本版积分规则
发表回复
回帖后跳转到最后一页
快速回复
返回顶部
返回列表