4002|5

1万

帖子

33

资源

裸片初长成(高级)

STM32F429由CubeMX生成的项目对SDRAM读写,还需要再加入相应命令吗?

我用CUBE-MX生成了STM32F429项目,因为好象 -- 好象是说它生成 的项目就可以对硬件直接操作了,当然第一个是IO口了,感觉不错,
对SDRAM的读写就出现了问题,
-------  简单写了个语句,读SDRAM地址的内容;
                                      写SDRAM某一地址。

当执行到读时,就转到了硬件错误中断----- HardFault_Handler()里了。

仔细看了SDRAM的初始化程序,它对两个寄存器设置了:SDCR[1,2]及SDTR[1,2]。而其它寄存器没有设置。

但是象FMC_SDCMR,它是contains the command issued when the SDRAM device is accessed的,没有它是不是肯定会进入HardFault_Handler()吗?
此帖出自stm32/stm8论坛

回复

1万

帖子

33

资源

裸片初长成(高级)

我看了其它ST的例程,有对SDCMR及SDRTR的设置,

-------------------  CubeMX生成的项目倒没有发现对这两个寄存器的设置

回复

1万

帖子

33

资源

裸片初长成(高级)

昨晚试了,确实,需要写另外两个寄存器SDCMR及SDRTR的设置,。


但是,现在读出来的数值始终是FFFF,不管写入的是什么。-------  可能写入的也不正常吧

回复

1万

帖子

33

资源

裸片初长成(高级)

今天看了,控制脚有三个没有变化:
CKE  ------- 恒低
BA0  -------- 恒低 ,  这个好象关系不好
BA1  --------- 恒低。

回复

3

帖子

0

资源

一粒金砂(初级)

最近也在玩这个,使用CubeMX生成的代码里面有缺陷:
1、没有对SDCMR及SDRTR的设置,解决方法就是直接从例程里面拷贝即可使用,可能有个别变量缺定义的现象,直接从例程里拷贝也行。
2、写入不正常,这个是可能你的SDRAM芯片的WE管脚没有设置,这个一般默认是低电平有效。而CubeMX生成的代码没有对WE管脚进行设置,这个你自己设置成低电平即可。

点评

谢谢你! 已经搞好了,加了个SDRAM_Initialization_Sequence函数就行了。  详情 回复 发表于 2017-2-16 12:10

回复

1万

帖子

33

资源

裸片初长成(高级)

dmzy007 发表于 2017-2-16 09:48
最近也在玩这个,使用CubeMX生成的代码里面有缺陷:
1、没有对SDCMR及SDRTR的设置,解决方法就是直接从例 ...

谢谢你!

已经搞好了,加了个SDRAM_Initialization_Sequence函数就行了。

回复
您需要登录后才可以回帖 登录 | 注册

关闭
站长推荐上一条 1/3 下一条

About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新更新 手机版

站点相关: 安防电子 汽车电子 手机便携 工业控制 家用电子 医疗电子 测试测量 网络通信 物联网

北京市海淀区知春路23号集成电路设计园量子银座1305 电话:(010)82350740 邮编:100191

电子工程世界版权所有 京ICP证060456号 京ICP备10001474号 电信业务审批[2006]字第258号函 京公海网安备110108001534 Copyright © 2005-2020 EEWORLD.com.cn, Inc. All rights reserved
快速回复 返回顶部 返回列表