这几天一直在捣鼓stm32h7b0 ospi外挂psram做映射读写,
群友“ART-Pi代言人”的测试平台是stm32h730,他反复测试了psram映射,在映射写的时候会进入硬件错误,
这几天我们两人交流了一下发现是stm32h7系列的几款单片机的ospi外的的一个bug导致的
(es0478-stm32h7a3xig-stm32h7b0xb-and-stm32h7b3xi-device-errata-stmicroelectronics.pdf)
(see errata 2.7.8 “Memory-mapped write error response when DQS output is disabled”)
,原文的意思是即使器件没有DQS引脚,在间接和映射写时也要开启DQS,而在间接和映射读时也要关闭DQS。
后续他的平台可以运行了。
我的stm32h7b0必须配置mpu关闭涉及cache的功能,总结如下:
对于psram映射的地址空间,mpu中TEX、C、B、S配置组合对应表中的Other attributes一列必须是空的,
不然会导致大量写入psram的数值存在错误。
下一步打算把程序存储在spi flash中,由mcu内部flash中的boot将spi flash中的程序拷贝到psram中运行,
剩余多余的psram存储空间就可以作为堆栈使用(不能配置cache,速度上会比较慢,希望后续的stm32型号能解决)。
目前已经实现boot从spi flash拷贝程序到psram并跳转到psram运行的工作。在keil下调试也可以了(已实现spi flash的下载算法)。不过要注意boot和app的时钟配置要合理,或者干脆一样的配置,避免不必要的错误。keil下代码重新编译过后再调试,需要手动点下载烧录,而不是调试的自动更新固件。
-
STM32
+关注
关注
2252文章
10731浏览量
350678 -
SPI
+关注
关注
17文章
1628浏览量
90139 -
PSRAM
+关注
关注
0文章
34浏览量
13191 -
stm32h7
+关注
关注
0文章
36浏览量
1753 -
单片机
+关注
关注
0文章
177浏览量
16658
发布评论请先 登录
相关推荐
STM32H7B0通过QSPI地址映射外部flash开始使用正常,出现QSPI功能异常是什么原因导致的?
STM32H7b0设置Boot0引脚选项字节为0x1FF0,发送CAN帧后依旧无回复怎么解决?
stm32H7B0 的spi_dma传输怎么能传输更长的字节?
STM32H7B0和STM32H730系统自带Bootloader的起始地址是什么?
请问STM32H730 OSPI在内存映射模式下单次读写长度是多少?
如何使用STM32H7A3/7B3和STM32H7B0微控制器内存和外围设备
STM32H7A3/7B3和STM32H7B0微控制器参考手册
如何使用USB3300的STM32H7B0上的ULPI?
STM32H735多路复用内存映射OSPI Hyperram硬故障问题如何解决?
AN5450_STM32H7A3/7B3 系列和 STM32H7B0 Value 系列智能电源管理 STM32Cube 扩展包
![AN5450_<b class='flag-5'>STM32H7</b>A3/<b class='flag-5'>7B</b>3 系列和 <b class='flag-5'>STM32H7B0</b> Value 系列智能电源管理 <b class='flag-5'>STM32</b>Cube 扩展包](https://file.elecfans.com/web1/M00/D9/4E/pIYBAF_1ac2Ac0EEAABDkS1IP1s689.png)
AN5307_STM32H7A3/7B3系列和STM32H7B0超值系列微控制器硬件开发入门
![AN5307_<b class='flag-5'>STM32H7</b>A3/<b class='flag-5'>7B</b>3系列和<b class='flag-5'>STM32H7B0</b>超值系列微控制器硬件开发入门](https://file.elecfans.com/web1/M00/D9/4E/pIYBAF_1ac2Ac0EEAABDkS1IP1s689.png)
RM0455_STM32H7A3/7B3 和 STM32H7B0 超值系列基于 Arm® 的高级32位 MCU
![RM0455_<b class='flag-5'>STM32H7</b>A3/<b class='flag-5'>7B</b>3 和 <b class='flag-5'>STM32H7B0</b> 超值系列基于 Arm® 的高级32位 MCU](https://file.elecfans.com/web1/M00/D9/4E/pIYBAF_1ac2Ac0EEAABDkS1IP1s689.png)
STM32H7A3/7B3和STM32H7B0超值系列先进的基于臂®的32位MCU
![<b class='flag-5'>STM32H7</b>A3/<b class='flag-5'>7B</b>3和<b class='flag-5'>STM32H7B0</b>超值系列先进的基于臂®的32位MCU](https://file.elecfans.com/web1/M00/D9/4E/pIYBAF_1ac2Ac0EEAABDkS1IP1s689.png)
ES0478_STM32H7A3xI/G和STM32H7B0xB和STM32H7B3xI单片机的局限性
![ES0478_<b class='flag-5'>STM32H7</b>A3xI/G和<b class='flag-5'>STM32H7B0</b>xB和<b class='flag-5'>STM32H7B</b>3xI单片机的局限性](https://file.elecfans.com/web1/M00/D9/4E/pIYBAF_1ac2Ac0EEAABDkS1IP1s689.png)
评论