文章目录

  • stm32固件库手册使用方法
  • 一、SDRAM简介
  • 二、利用固件库FMC外设初始化
  • 1.初始化SDRAM时序结构体
  • 2.初始化SDRAM结构体
  • 3.初始化SDRAM命令结构体


stm32固件库手册使用方法

(以FMC_SDRAM扩展外部储存为例)

一、SDRAM简介

二、利用固件库FMC外设初始化

1.初始化SDRAM时序结构体

2.初始化SDRAM结构体

3.初始化SDRAM命令结构体

一、SDRAM 同步动态随机存储器也是一个芯片
问题:它出什么地方来的呢?为什么会用到它?它怎么工作的?
stm32控制芯片内部有一定大小的SRAM和FLASH作为内存和程序储存空间,但是有时候后可能程序比较大,内存就不够用了,就要在stm32芯片的外部扩展储存器了,其实跟电脑扩展内存加内存条类似,而这里是stm32直接与SDRAM相连接。所以就有了SDRAM和SRAM,这里两者的区别是SDRAM需要周期性的充电,进行刷新,更新数据;SRAM存入数据之后不需要刷新,数据也不会丢。
SDRAM芯片包括:SDRAM信号线、控制逻辑、地址控制、SDRAM的存储阵列、数据输入输出五部分;
SDRAM的命令(就是控制SDRAM需要用到的一些列指令):CS引脚高电平命令禁止、空操作、行有效、列读写、预充电、刷新
SDRAM的初始化流程、SDRAM的读写流程,这是针对这个储存器芯片的初始化,先介绍这个芯片怎么初始化的,然后在下文中用FMC外设来驱动它,所以,我们要先 1.初始化FMC使用的gpio;2.初始化SDRAM;3进行读写SDRAM实验;

二、利用固件库初始化FMC

1.初始化SDRAM时序结构体

基于STM32的仓库环境智能测控系统设计与实现开题报告 stm32操作数据库_单片机

选择对应的芯片型号,这里我选的是stm32f429,选择FMC-SDRAM,里面包含有FMC要用到的引脚初始化配置SDRAM_GPIOconfig,SDRAM结构体初始化SDRAM_Init,SDRAM命令结构体初始化SDRAM_InitAequence,以及其他的三个函数,其功能可以从函数的名字上看出来。

基于STM32的仓库环境智能测控系统设计与实现开题报告 stm32操作数据库_sdram_02

例如对于引脚的初始化函数来说,点击该函数,显示右边这样的界面,

1处是这个函数的定义,在120行,可以从这里面复制关于FMC外设引脚初始化配置的函数即可,

2处是可以参考的函数,解释的是你这可以在这个函数里面找到本函数的引用,就是怎么使用的这个函数。

这几个函数其实都在1处的这个文件里面,这个文件上面的描述就是说这里提供了一个FMC的驱动例子。我们可以根据需要,对里面的内容粘贴到keil。

小技巧:粘贴过去到keil会出现前面都是序号的问题,我们将代码复制进去,按shift+alt鼠标从右向左选中要删除的序列号。

基于STM32的仓库环境智能测控系统设计与实现开题报告 stm32操作数据库_单片机_03


下面这个是已经编写好的程序,分为7个函数;

基于STM32的仓库环境智能测控系统设计与实现开题报告 stm32操作数据库_初始化_04

完成这一步,我们已经将FMC外设的初始化配置完成了,最后的SDRAM_Test函数就是需要我们根据自己的需要具体编写了。参考固件库手册可以极大地简化我们对外设的编写程序过程。

对于主函数如何参考固件库编写,请关注后续!