历史上的今天

今天是:2024年09月13日(星期五)

正在发生

2021年09月13日 | STM32用STLINK烧写外置FLASH遇到的问题

发布者:chunying 来源: eefocus关键字:STM32 手机看文章 扫描二维码
随时随地手机看文章

由于项目需要大量的图片字库还有音频文件,所以外挂了NOR flash和NAND flash,需要用到烧写算法STLDR(就是包含几段在SRAM里面运行的代码),调试的时候遇到了几个问题,都是大意造成的,所以写出来记录一下


首先烧写用到PC端软件是STM32 STLINK Utility,在安装目录下附带了一些常用的flash的烧写算法,但没有我用到的那种,所以只能参考ST-LINK Utility UM手册在…ST-LINK UtilityExternalLoader目录下的工程模板上修改,修改需要用到对FLASH的初始化、读写、擦除函数,这个要提前调试好,填到对应的函数内就可以了,后面由上位机自己调用


问题来了,主要是三方面的问题,第一个是编译出错,第二个是延时,第三个是地址


1)编译出错:在修改完模板第一次编译的时候可能会报错.xxx.axf: Error: L6265E: Non-PI Section loader_src.o(.data) cannot be assigned to PI Exec region PrgData.,这个问题需要修改target.sct文件,添加ABSOLUTE,这个是偶然在一个论坛上看到的,在此表示感谢

在这里插入图片描述在这里插入图片描述

2)延时问题:工程用的cubemx的HAL库开发,所有延时部分都是用的HAL_Delay()函数,但是在模板中并没有使用中断,一直卡死在延时函数里面出不来,所以最终改为常用的自减法来达到延时的目的


3)地址问题:flash接在OSPI2接口上,起始基地址是0x70000000,但是OSPI的库函数使用的地址是不包括基地址的,而在模板中读写函数传入的地址参数是带着基地址的,所以需要与0x0FFFFFFF相与再使用


这三个问题解决好就可以正常读写了,就是感觉速度不快,带校验也就50k/s,可能是HAL库函数注重稳定性和兼容性,代码冗余多,直接操作寄存器可能会快点

关键字:STM32 引用地址:STM32用STLINK烧写外置FLASH遇到的问题

上一篇:STM32f407驱动hc-sr04超声波测距模块
下一篇:如何用ST-LINK给STM32下载HEX文件

推荐阅读

2018年9月13日,致力于亚太地区市场的领先半导体元器件分销商---大联大控股宣布,其旗下世平推出德州仪器(TI)低功耗无线M-Bus通信模组参考设计解决方案。 此参考设计说明了如何将大联大世平代理的TI无线M-Bus堆叠用于CC1310和CC1350无线MCU,并将其集成到智能仪器表或资料收集器产品中。此软件栈与开放式计量系统(OMS)v3.0.1规范相容。EN13757-1至EN13...
(文章来源:中科罗伯特机器人学院) 人机协作一直是我们都在提倡的生产方式,但一般的协作机器人负载普遍较小,与很多传统的大型工业机器人相比,协作机器人的承重力较弱,速度也较相对较慢,在生产效率方面没有传统机器人表现的优异。 在传统工业机器人工作时,由于技术和的限制,为了保证人员的安全就需要人类排除在工作区域以外,像是在工厂的、...
微软的双屏手机 Surface Duo 已经于今天在美国市场上市发售,早期消费者评价都是比较积极正面的。不过也有用户反馈称 Duo 存在应用崩溃等系统问题,相信后期会通过系统更新的方式进行修复。如果微软推出单屏 Android 手机,会采用什么样的设计?知名设计师 Jonas Daehnert 带来了名为 Surface Solo 的概念渲染作品。
9月10日,华为发布公司轮值董事长徐直军签发的公司总裁办电子邮件,内容是徐直军给《6G无线通信新征程》一书作的序。据悉,华为在持续推动5G商用的同时,也在 2017年开始了对6G研究的投资。徐直军在原文中提到:“我们预计6G将在2030年左右投向市场,到那时,究竟市场将会迎来什么样的6G,这是一个整个产业界要用未来十年时间共同回答的问题。我们能否回...

史海拾趣

问答坊 | AI 解惑

来了

呵呵   好久没来   来看看哦…

查看全部问答∨

请教evc下使用SoundBase类录音的问题

各位大虾,我在使用“norains”博主编写的SoundBase“类在evc下实现录音的时候,碰到了调试正常通过,但录音的时候不能录音,请各位不吝赐教, 下面是出现问题的详细情况: 为方便各位查看,"SoundBase"类的具体内容在这个网页里面http://blog ...…

查看全部问答∨

最近在学Ardence RTX实时系统软件,有很多不懂的地方,下面是一个定时器程序,不太明白?

  最近在学Ardence RTX实时系统软件,有很多不懂的地方,下面是一个定时器程序,不太明白?请路过大虾们帮忙看看。 下面是源代码,包括两个文件,一个头文件,一个源文件。如下所示: /////////////////////////////////////////////////////// ...…

查看全部问答∨

关于arm9与c5501dsp通信问题

往dsp写入数据时,控制寄存器和地址寄存器都没问题,但是用ccs看memory并没有改变。读数据也不对,请大虾们多指教啊!!!我用的是8位多路模式…

查看全部问答∨

BGA封装手工焊接成功率是不是很低?

请问大家一个东西,手工焊接BGA封装的成功率是不是很低啊?当然这个不是我自己焊接,是找外面公司焊接的。…

查看全部问答∨

IAR调试STM32问题

Debug时出现这个问题,如图怎么解决…

查看全部问答∨

STM32F10x标准外设库V3.5.0发行说明

STM32F10x标准外设库V3.5.0发行说明 …

查看全部问答∨

【MSP430共享】基子 MS P 4 3 0和 D S P的动平衡测量系统

介绍了动平衡的基本概念, 并针对传统的单微处理器动平衡系统处理实时性不强等缺陷, 介绍了MS P 4 3 0单片机结合T MS 3 2 0数字信号处理器组成的动平衡测量系统的原理和实现方法。  [ 本帖最后由 鑫海宝贝 于 2011-10-12 09:13 编辑 ]…

查看全部问答∨

DDS常见问题综述

DDS常见问题预览。同时介绍ADI公司一些常用DDS芯片…

查看全部问答∨
小广播
设计资源 培训 开发板 精华推荐

最新单片机文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

换一换 更多 相关热搜器件
随便看看

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

电子工程世界版权所有 京ICP证060456号 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved