rtthread studio与正点原子apollo[12]--SDRAM
前言
apollo开发板板载SDRAM W9825G6KH的使用。
一、硬件连接
阿波罗STM32F767核心板板载的W9825G6KH芯片挂载FMC SDRAM的控制器1上(SDNE0),原理图如下图
从图中看出连接关系
A[0:12]<–>FMC_A[0:12]
BA[0:1]<–>FMC_BA[0:1]
D[0:15]<–>FMC_D[0:15]
CKE<–>FMC_SDCKE0
CLK<–>FMC_SDCLK
UDQM<–>FMC_NBL1
LDQM<–>FMC_NBL0
WE<–>FMC_SDNWE
CAS<–>FMC_SDNCAS
RAS<–>FMC_SDNRAS
CS<–>FMC_SDNE0
二、SDRAM驱动配置
打开RT-Thread Studio创建工程。
第一步:
复制drv_sdram.c到driver文件夹
drv_sdram.c在RT-Thread studio 安装目录下
第二步:
复制sdram_port.h 文件到 drivers/include 文件夹内
第三步:
在board.h文件中添加宏定义
#define BSP_USING_SDRAM
用去开启SDRAM的驱动
第四步:
在stm32f7xx_hal_conf.h文件中开启SDRAM功能,用于加载SDRAM的头文件
第五步:
在cubemx中配置FMC,并将生成代码的HAL_SDRAM_MspInit(SDRAM_HandleTypeDef *hsdram)函数复制到board.c文件末尾或者drv_sdram.c文件中都可以。
三、测试
在drv_sdram.c文件中定义了int sdram_test(void),可以直接调用进行SDRAM的测试
代码中可以看到,需要启动调试功能及FINSHI功能。