0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

用SD卡Bootloader改变你的生活

PCB线路板打样 来源:LONG 2019-07-26 09:00 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

像Ray LaMontagne一样,我遇到了麻烦。智能手机麻烦,麻烦,麻烦,麻烦。我可以弄清楚我想要的应用程序,并且我已经得到了我需要的游戏(等等,我可能会将这些优先级向后),但是传输我的所有图像和数据会更加困难。似乎总会留下音乐或者无论出于什么原因拒绝备份的图像。我认为自己非常精明,但当我拿到一部新的智能手机时,我开始担心,担心,担心,担心。我甚至无法想象我是否正在尝试从更大的设备传输数据 - 从硬盘驱动器获取所有文件或更大的文件似乎会让我更多的循环。

当我购买新智能手机时,销售团队通过使用实用程序应用程序帮助我完成,该应用程序轻松地将我的数据从旧智能手机迁移到新智能手机。我不需要用三十根绳索和电缆挣扎,并且通过我的所有收藏品来搜索,以确定将要传输的内容。现在借鉴这些经验并将其应用到您的工作中:您需要多久更换一次微控制器的固件?你多久希望能避免插入电缆的笨拙过程?简化此过程的一种方法是使用SD卡引导加载程序。

使用SD卡引导加载程序灵活更新

传统上,使用编程电缆。如果您在空间受限的环境中工作,或者如果您像我一样,并且您倾向于将未完成的任务留在整个地方,这可能会变得麻烦和繁琐。此外,它适用于外部干扰。如果你乘坐电缆旅行并将桌子上的所有东西敲掉,该怎么办?或者花几个小时试图找出为什么数据没有传输只是为了意识到电缆没有插入足够紧的电缆?

在微控制器中,引导加载程序是一个特殊的程序,它接收来自的应用程序固件外部源并将其写入内部程序存储器。它往往占用空间小,位于程序存储器的保留部分。当微控制器上电并尝试读取外部媒体或资源中存在的最新固件时,引导加载程序将擦除程序存储器中的现有固件并将新固件写入其中。

您可以自定义您的引导加载程序从串行接口,LAN,外部介质等获取其新固件。但我个人偏好SD卡:它不需要是计算机上的复杂设置,它实际上是无线的。使用SD卡作为引导加载程序会将更新固件转换为插入SD卡和重置微控制器的问题。

使用引导加载程序,可以在现场更新固件,并最大限度地中断系统操作。此功能使引导加载程序,尤其是SD卡引导加载程序在嵌入式系统中非常有用,这些嵌入式系统可能需要在部署过程中进行更新或故障排除。如果固件的规格可能需要随着时间的推移而发展或定期更新,那么SD卡引导程序将使这一过程变得更加容易。

确保微控制器有可用于引导加载程序和主应用程序的空间。

不要将自己击倒再次

SD卡引导加载程序背后的主要思想是引导加载程序将从SD卡读取主应用程序的二进制或十六进制文件,并将该文件写入微控制器的程序存储器中。记住这个核心过程,这里还有一些需要考虑的问题:

程序存储器分配:虽然拥有SD卡引导加载程序有明显的好处,但并非所有微控制器都可以加载引导加载程序。引导加载程序本身就是一个应用程序。因此,如果您使用的是具有较小内存空间或应用程序固件太大的微控制器,则需要一定数量的程序存储空间。如果您计划合并引导加载程序,则为引导加载程序和固件应用程序分配足够的程序存储空间。

实现SD卡接口:SD卡引导加载程序将需要在硬件上构建其他组件容纳SD卡存储。如果您的主应用程序不需要SD卡接口,则会产生额外费用。除此之外,您还需要在引导加载程序上实现文件分配表(FAT32)堆栈,以确保您的引导加载程序可以读取新固件的二进制或十六进制文件。

程序存储器闪存写入顺序:引导加载程序基本上重写其内部闪存中的一系列地址,其中包含要加载的应用程序固件的信息字节。这将要求在特定寄存器上执行正确的命令序列以擦除和写入内部闪存。确保正在写入正确的地址,并且引导加载程序实际上没有错误地擦除自身。

将二进制文件映射到正确的地址:正常的应用程序通常写在起始地址0x00000000上。但是,使用引导加载程序时,主应用程序或引导加载程序的起始地址可能会有所不同,具体取决于它们在程序存储空间中的分配方式。修改内存链接文件以确保为正确的内存地址编译两个程序的十六进制文件。

严格测试:SD卡引导加载程序的目的是简化现场固件更新,而不是添加过程中不必要的错误或困难。完全测试引导加载程序并确保引导加载程序和主应用程序都按预期运行非常重要。如果主应用程序写入不正确或映射不正确,您可能会发现系统行为不正常。

您需要确保引导加载程序在正确的空间中编写正确的代码。

除了高质量的固件开发之外,使用引导加载程序还有其他好处。良好的硬件设计,特别是SD卡接口,将排除串扰和电气干扰。 AltiumDesigner®的信号完整性分析工具可能非常方便。

使用引导加载程序简化工作空间并灵活地进行必要的固件更新,并且能够随时随地进行处理。与智能手机不同,SD卡引导程序的正确维护和设置可以比发布另一个手机升级前几个月的时间更长。最好的部分是,每次需要使用它时,您都不需要致电客户协助。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • SD卡
    +关注

    关注

    2

    文章

    583

    浏览量

    67802
  • bootloader
    +关注

    关注

    2

    文章

    241

    浏览量

    47682
  • 华强pcb线路板打样

    关注

    5

    文章

    14629

    浏览量

    44391
收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    SD NAND、TFSD的应用领域大揭秘

    在如今这个数据爆炸的时代,各类存储设备犹如繁星般闪耀,而SD NAND、TFSD更是其中的佼佼者。它们看似相似,实则各有千秋,在不同的领域和场景中发挥着独特的作用。今天,就让我们
    的头像 发表于 11-30 15:16 414次阅读
    <b class='flag-5'>SD</b> NAND、TF<b class='flag-5'>卡</b>、<b class='flag-5'>SD</b><b class='flag-5'>卡</b>的应用领域大揭秘

    解锁SD NAND、TFSD的应用密码

    在科技飞速发展的今天,数据存储的需求渗透到生活与工作的每一个角落——从手腕上的智能手表,到专业摄影师的相机,再到工厂里的工业路由器,都离不开高效可靠的存储介质。SD NAND、TFSD
    的头像 发表于 11-24 11:04 244次阅读
    解锁<b class='flag-5'>SD</b> NAND、TF<b class='flag-5'>卡</b>、<b class='flag-5'>SD</b><b class='flag-5'>卡</b>的应用密码

    解锁存储密码:SD NAND、TFSD的应用全景

    在数据洪流的时代,存储介质就如同数字世界的基石,支撑着各类设备的正常运转。SD NAND、TFSD,虽同属NAND Flash存储介质家族,却因各自独特的“个性”,在不同领域绽放
    的头像 发表于 10-29 14:24 219次阅读

    MCU200T上SD读写流程

    SD MCU200T对应管脚表 SD管脚 FPGA管脚 sd_miso F16 sd_
    发表于 10-29 07:04

    SD无法挂载怎么解决?

    spi4SPI Bus0 spi2SPI Bus0 spi1SPI Bus0 i2c1I2C Bus0 pinPin Device0 msh /> 3.可以读到容量信息,裸机程序SD
    发表于 10-10 06:19

    SDIO SD电路设计速成攻略:核心步骤+调试技巧 !

    针对时间紧迫的开发者,本攻略直击SDIO外接SD电路设计的核心步骤,并补充实用调试技巧,帮助你在最短时间完成从理论到可用的电路实现。 今天一起来聊聊 SDIO外接SD: SDIO
    的头像 发表于 08-15 14:32 500次阅读
    SDIO <b class='flag-5'>SD</b><b class='flag-5'>卡</b>电路设计速成攻略:核心步骤+调试技巧 !

    SD—雷龙 SD NAND

    一、SD介绍 1.基本介绍 本质:nand flash + 控制芯片 1.SD ,Secure Digital Card,称为安全数字
    的头像 发表于 07-21 17:59 3249次阅读
    <b class='flag-5'>SD</b><b class='flag-5'>卡</b>—雷龙 <b class='flag-5'>SD</b> NAND

    【嵌入式开发】SD—雷龙 SD NAND

    ,速度级别Class10,标准的SD 2.0协议使得用户可以直接移植标准驱动代码,省去了驱动代码编程环节。支持TF启动的SOC都可以SD NAND,提供STM32参考例程及原厂技术
    发表于 07-21 17:56

    k230_sdk使用sd启动,能看到sdcard吗?

    k230_sdk使用sd启动,能看到sdcard吗,我sd启动后无法找到sd卡里的文件,还有我
    发表于 06-25 07:39

    什么是SD、TF写保护?写保护的常见原因

    部分SD、TF适配器或套上设有物理写保护开关,当开关滑动到"锁定"位置时,卡片会自动进入写保护状态。这是最常见也是最容易解决的写保护原因。
    的头像 发表于 06-10 00:00 3990次阅读
    什么是<b class='flag-5'>SD</b><b class='flag-5'>卡</b>、TF<b class='flag-5'>卡</b>写保护?写保护的常见原因

    SD、TF检测工具:全面解析与选择指南

    在存储芯片及存储的生产和使用过程中,确保产品的质量和可靠性至关重要。SD、T作为一种广泛使用的存储介质,其检测工具的选择对于保障存储性能和数据安全起着关键作用。接下来将介绍几种常
    的头像 发表于 06-09 14:36 2923次阅读
    <b class='flag-5'>SD</b><b class='flag-5'>卡</b>、TF<b class='flag-5'>卡</b>检测工具:全面解析与选择指南

    科普|一文带你认清SD、TF、SIM及eSIM,高手请忽略!

    1.定义SD是SecureDigitalCard的英文缩写,直译就是“安全数字”。一般用于数码相机等,作外存储器用。TF即是T-Flash
    的头像 发表于 05-21 15:56 4619次阅读
    科普|一文带你认清<b class='flag-5'>SD</b><b class='flag-5'>卡</b>、TF<b class='flag-5'>卡</b>、SIM及eSIM<b class='flag-5'>卡</b>,高手请忽略!

    SD卡座和TF卡座作为电子设备中的储存槽两者各有哪些特点

    SD卡座和TF卡座作为现代电子设备中不可或缺的存储接口,各自具备独特的特点和适用场景。在深入探讨这两者之间的区别之前,连欣科技认为首先需要了解它们的基本概念。SD卡座是专门为SD设计
    的头像 发表于 01-14 15:06 3659次阅读
    <b class='flag-5'>SD</b>卡座和TF卡座作为电子设备中的储存<b class='flag-5'>卡</b>槽两者各有哪些特点

    EE-335:SD与Blackfin处理器的接口

    电子发烧友网站提供《EE-335:SD与Blackfin处理器的接口.pdf》资料免费下载
    发表于 01-06 14:15 0次下载
    EE-335:<b class='flag-5'>SD</b><b class='flag-5'>卡</b>与Blackfin处理器的接口

    4G模组SD使用技巧|专家指南

    今天我们学习的是4G模组SD使用技巧,以Air724UG为例做出指南供大家参考。
    的头像 发表于 12-14 09:37 1164次阅读
    4G模组<b class='flag-5'>SD</b><b class='flag-5'>卡</b>使用技巧|专家指南