OpenEdv-开源电子网

 找回密码
 立即注册
正点原子全套STM32/Linux/FPGA开发资料,上千讲STM32视频教程免费下载...
查看: 4315|回复: 1

雅特力MCU AT32F403A驱动复用PSRAM

[复制链接]

44

主题

49

帖子

0

精华

初级会员

Rank: 2

积分
175
金钱
175
注册时间
2017-5-6
在线时间
10 小时
发表于 2021-1-24 19:59:03 | 显示全部楼层 |阅读模式
AT32F403A驱动复用PSRAM实验目的:
最近使用AT32F403A做项目,需要外扩PSRAM用来存储程序运行中间数据,所以记录一下心路历程。开干!

实验步骤:
1.      硬件选型
主控芯片:看题目就知道啦,就是雅特力科技的AT32F403A系列。注意的要使用AT32F403A系列的XMC驱动PSRAM必须选用100脚封装的芯片,小封装的芯片脚位不够哦。

PSRAM选择:选择的是Winbond的W957D6HB系列,此系列address线的低16bit和Data线是复用的,具体出pin可看下图:
11.png
2.      驱动代码准备
PSRAM这边没有初始化的步骤,在使用上电默认的异步模式时,只需将脚位正确与MCU的脚位接在一起即可。驱动程序也主要是MCU这边的配置了。
1)  配置MCU XMC外设
XMC是AT32F403A芯片的一个外设,主要用于驱动外部存储器;其实这个外设就是大家所熟知的某MCU厂商的FSMC啦,哈哈!

这里需要注意的几点是:1.PSRAM的总线宽度是16bit,所以XMC的数据总线宽度要配置为16bit;2.由于此颗PSRAM是复用的,所以XMC要配置为复用模式;3.其他细节就可以看附件的驱动程序了。
2)  XMC脚位一览

XMC所使用到的pin脚可以看如下表格:
22.png
需要将表格中的PIN脚配置成AF_PP模式,那么在开启XMC的时钟后,这些PIN就被XMC驱动了。
3)  时序配置

现在就是时序配置了,具体时序需要对照PSRAM的Datasheet中的时序参数,这里就不啰嗦了,我用的这颗PSRAM的时序配置就在代码中了。

实验结果:
为了验证正确性,使用雅特力科技的BSP中相关例程稍作修改;先写数据到PSRAM某个地址,然后读出来对比。写入和读出的数据相符,实验成功!!!这里实验ok了就可以移植进项目中了。如果有兴趣的同学,可以将附件中的代码解压到雅特力官方BSP的下面路径即可编译下载哦: AT32F4xx_StdPeriph_Lib_V1.x.x\Project\AT_START_F403A\Examples\XMC


PSRAM.zip

21.01 KB, 下载次数: 139

正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

1

主题

7

帖子

0

精华

初级会员

Rank: 2

积分
127
金钱
127
注册时间
2020-6-3
在线时间
28 小时
发表于 2021-3-1 14:35:20 | 显示全部楼层
回复 支持 反对

使用道具 举报

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

本版积分规则



关闭

原子哥极力推荐上一条 /2 下一条

正点原子公众号

QQ|手机版|OpenEdv-开源电子网 ( 粤ICP备12000418号-1 )

GMT+8, 2025-2-22 16:39

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

快速回复 返回顶部 返回列表