由于项目需要大量的图片字库还有音频文件,所以外挂了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库函数注重稳定性和兼容性,代码冗余多,直接操作寄存器可能会快点
上一篇:STM32f407驱动hc-sr04超声波测距模块
下一篇:如何用ST-LINK给STM32下载HEX文件
推荐阅读最新更新时间:2024-11-19 21:51
推荐帖子
- 电子设计师必读-可靠性设计100条
- 据说来自于航天部一位已去世的前辈呕心沥血之作电子设计师必读-可靠性设计100条haodongdong收藏了
- tonytong 单片机
- 【STM32H7S78-DK】 七 特殊功能计算器
- 【STM32H7S78-DK】七特殊功能计算器【STM32H7S78-DK】一开箱贴【STM32H7S78-DK】二touchgxf环境搭建和基本测试【STM32H7S78-DK】三touchgxf和stm32cubeide和led按键测试【STM32H7S78-DK】四下载失败问题及解决、计数器实现及分析【STM32H7S78-DK】五乱序键盘实现及分析【STM32H7S78-DK
- damiaa stm32/stm8
- 心电图(ECG)信号链的模拟基础(一)
- ECG机的基本功能包括ECG波形显示(通过LCD显示屏或印刷纸媒质显示)、心跳律动指示以及通过按钮控制的简单用户界面。越来越多的ECG产品要求具备更多的功能,例如通过便携式媒体存储电子病历、无线/有线传输以及在具有触摸功能的大型LCD显示屏上显示2D/3D图像。在本视频中,德州仪器的应用工程师将为您介绍TI的ECG解决方案和最新产品。本视频共分为四个部分,本视频为第一部分。欲知更多,请关注我的其他分享~ 心电图(ECG)信号链的模拟基础(一)看看视频,学习学习
- 德州仪器_视频 模拟与混合信号
- 【R7F0C809】之学习笔记-温度记录器
- 1下载相关学习文档拿到开发板,可以学习了,先下载相关文档,整理如下所示【R7F0C809】之学习笔记-温度记录器感谢分享~软件相关文档低功耗MCU实战手册
- lansebuluo 瑞萨电子MCU
- 【CY8CKIT-149 PSoC 4100S测评】+LED开关计数与LCD显示(结项报告)
- 本项目将CY8CKIT-149PSoC4100S作为控制核心,通过外接LCD1602作为显示设备,外接按键和LED作为信号接收与显示测试。整个项目硬件如下图所示。其中PSoC板子上的按键和外接的按键共用一个引脚,目的是测试外接的按键与板子上的按键效果一样。PPSoC板子上的LED和外接的LED也共用一个引脚,但PSoC板子上的LED为低电平点亮,自制板子上的LED为高电平点亮。项目实现的功能通过按键来控制LED的亮灭,同时将LED的状态(PSoC板子上的那个LED)显示在LCD
- DDZZ669 单片机
- 用ccs 调试出来的tm4c123gh6pz的彩屏
- 记得在编译链接之前要添加好预编译指令:用ccs调试出来的tm4c123gh6pz的彩屏
- binboy123 微控制器 MCU
设计资源 培训 开发板 精华推荐
- 使用 NXP Semiconductors 的 PTN5100 的参考设计
- STEVAL-IHM040V1,基于STM32、SLLIMM nano的BLDC/PMSM驱动演示板
- 使用 ROHM Semiconductor 的 BU4921 的参考设计
- stm32最小系统开发板
- 使用 Analog Devices 的 AD9549A 的参考设计
- STEVAL-ISA080V1,基于 L6585DE 组合 IC 的 90 W-HB LLC 谐振转换器
- 【P2010001】ULN2003步进电机驱动板
- EVAL-AD7484CBZ,用于 AD7484、14 位、3 MSPS ADC 的仪表评估板
- 【征集令】基于ESP32的物联网指纹门锁控制板
- 使用 Analog Devices 的 LT1303CN8-5 的参考设计