历史上的今天
返回首页

历史上的今天

今天是:2025年04月19日(星期六)

2019年04月19日 | stm32程序升级SD卡读取hex文件写入flash

2019-04-19 来源:eefocus

参考文献:
1、了解hex文件:https://wenku.baidu.com/view/930d6583ec3a87c24028c403.html
2、stm32SD卡hex文件升级:看这位博客的【MCU实战经验】+ 通过SD卡升级HEX格式程序(附源码):https://blog.csdn.net/niepangu/article/details/50683754
【MCU实战经验】+ 通过SD卡升级HEX格式程序(附源码)
3、boot与app的切换可以了解一下正点原子的教程:www.openedv.com/posts/list/11494.htm
4、stm32的flash读写和SD卡可以看正点原子的教程

程序步骤:
1、stm32从SD卡中读取hex文件
2、检验读取到的hex文件
3、将hex文件转换成bin文件格式,并写入stm32的flash中
4、boot切换到相应的app程序

注意事项:
1、记得关闭中断:__disable_irq();
2、切换前要将boot开启的外设中断DISABLE掉如:USART_Cmd(USART1, DISABLE); (没有disable掉切换可能会有bug)或者恢复复位状态USART_DeInit(USART1);
3、切换到APP后要开启中断__enable_irq();

代码连接:
1、链接:https://pan.baidu.com/s/1g9MHC0iGvclix6NHt8S27Q 密码:ucld


推荐阅读

史海拾趣

Ambersil公司的发展小趣事

在电子行业的初期,Ambersil公司以其创新的技术和产品迅速崭露头角。公司研发团队成功开发出一种高效的电子清洁剂,能够去除电路板上的顽固污垢,提高电子设备的性能和稳定性。这一创新产品迅速获得了市场的认可,Ambersil公司因此获得了大量的订单,销售额逐年攀升。

Densei-Lambda (TDK)公司的发展小趣事

随着环保意识的日益增强,Ambersil公司开始关注产品的环保性能。公司研发团队致力于开发环保型的电子清洁剂,减少产品对环境的污染。同时,公司还加强了对生产过程的环保管理,确保生产过程中的废弃物得到有效处理。这些举措使得Ambersil公司的产品在市场上更加受到消费者的青睐。

Advanced Thermal Products Inc公司的发展小趣事

ATP公司深知品质是企业生存和发展的基石。因此,他们建立了严格的质量管理体系,从原材料采购到产品出厂的每一个环节都进行严格把控。同时,公司注重品牌建设,通过广告宣传、参加展会等方式提升品牌知名度和美誉度。这些举措使得ATP公司在市场上逐渐树立了良好的品牌形象。

E-T-A [E-T-A Circuit Breakers]公司的发展小趣事

进入21世纪后,E-T-A公司开始关注智能电路保护技术的研发。公司投入大量资源进行技术创新,成功推出了多款智能电路保护产品。这些产品不仅具有更高的安全性和可靠性,还能实现远程监控和控制功能,为客户提供更加便捷和高效的服务。

Faraday Technology公司的发展小趣事

进入21世纪后,E-T-A公司开始关注智能电路保护技术的研发。公司投入大量资源进行技术创新,成功推出了多款智能电路保护产品。这些产品不仅具有更高的安全性和可靠性,还能实现远程监控和控制功能,为客户提供更加便捷和高效的服务。

Honeywell公司的发展小趣事

背景:进入20世纪后,霍尼韦尔在恒温器领域的技术不断成熟,同时,另一家名为霍尼韦尔供暖专业公司的企业也在加热器领域取得了显著成就。

发展:1927年,明尼阿波利斯热调节器公司与霍尼韦尔供暖专业公司合并,创立了明尼阿波利斯-霍尼韦尔调节器公司。这次合并不仅增强了公司的技术实力,还拓展了业务范围,使公司成为当时最大的高品质珠宝钟表生产商(尽管这与电子行业的直接关联较小,但反映了公司扩张的雄心)。

关键事件:合并后,公司继续深耕工业自动化领域,并收购了布朗仪器公司,进一步巩固了在全球工业控制器和指示器市场的领导地位。

问答坊 | AI 解惑

串口一分二连接的问题

我想用一台主机连接两个终端,串口只有一个,不能加串口卡什么的。 主机(发送接收) | | |——————从终端(只收不发) | | 主终端(发送接收) 我试过直接从主机与主终端的串口连接线中并接出一条线到从终端去,但并不成功,主机与主 ...…

查看全部问答>

memset与 变量定义时初始化的 区别

unsigned char pDATA[8]; memset(pDATA,0 ,8); 如果直接在定义处初始化为0,与memset的区别是 什么?…

查看全部问答>

请有经验的大师推荐一款带USB接口和通讯功能的单片机

各位XDJM,我想使用一个带USB接口和通讯功能的单片机!请知道的给我提供一下地址或者资料!先谢了!! …

查看全部问答>

请教SD卡坏块检测问题.

我在s3c2440上做SD卡读写驱动,没有文件系统,就一块一块地读写.怎样检测坏块,有了坏块怎么标记呢? SD卡又不像nand flash那样有自己的一套检测标记方式,请大家指点!!…

查看全部问答>

越来越受不了万利

我搞不懂ST为什么找万利这种货色的公司做代理。早就耳闻万利技术支持垃圾,没想到这么垃圾。今天咨询某工一个问题,我仔细和他叙述一遍,结果他说没有听懂我在说什么。我当时捏一把汗,难道我在说火星语?我又花2分钟仔细从头到尾把问题叙说一 ...…

查看全部问答>

求助:warning: last line of file ends without a newline

我用的是ccs2.0,片子是6713。 求助各位高手,我在编译ccs时,每次都出现warning: last line of file ends without a newline。有人说是最后一行要加个回车,我加了,可是还是有这个问题,这里请教各位了。 还有就是我每次编译完ccs,它总是自动 ...…

查看全部问答>

Buck电源深入研究之纹波电压(有图)

最近制作了一块Buck 型DCDC开关电源,24V转5V;利用示波器AC耦合输入测试电源的纹波电压,大约为+10mv/-15mv,但是纹波电压的波动和MOS管的开关对应关系好像不对,教科书中介绍BUCK输出滤波电容纹波电压与 MOS管的开关对应关系如下图:但是我测得输 ...…

查看全部问答>

这程序有点问题,计时的

#include <reg52.h>#define uchar unsigned char#define uint unsigned intsbit dula=P2^6;sbit wela=P2^7;uchar a,num,t,shi,fen,M1,M2;uchar code table[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x77,0x7c,0x39,0x5e,0x79,0x7 ...…

查看全部问答>

Sate210 SDMMC/Inand wince 启动bootloader 镜像终于准备发布了!

使用文档和镜像,以及uboot 启动SD卡制作工具下载链接 这几周我都在升级Sate210 的 SDMMC/inand 启动wince 系统的bootloader,其实是完全替代了,以前三星提供的dragin 的烧写方式, O(∩_∩)O~其实我是借助了u-boot的 大风,用u-boot 启动了Sate ...…

查看全部问答>

【学习心得】---电池电量监测基础知识

这几天看到学习视频中有电池检测的视频,本以为TI会大力的宣传其阻抗跟踪技术,但是,点开视频从第一讲开始,TI就对整个电池监测技术做了总结,这里面包括我们之前通常使用的ADC直接监测电池电压来判断电池的容量,然后就是库仑计法,该算法可以做 ...…

查看全部问答>