這幾天一直在搗鼓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
+關注
關注
2270文章
10914瀏覽量
356726 -
SPI
+關注
關注
17文章
1716瀏覽量
91832 -
PSRAM
+關注
關注
0文章
35瀏覽量
13374 -
stm32h7
+關注
關注
0文章
37瀏覽量
1753 -
單片機
+關注
關注
0文章
216瀏覽量
16658
發布評論請先 登錄
相關推薦
評論