STM32利用STM32CubeMX驱动SDRAM

本次发布FMC总线驱动SDRAM的博客,为下次发布LTDC外设驱动RGB屏的博客做准备。利用STM32CubeMX和HAL库,生成的工程代码具有很强的可移植性,而且学会了可以自己再写其他板子的SDRAM驱动程序。

1.首先打开CubeMX,新建一个工程,这里我用的是RT-Thread推出的STM32H750开发板,勾上外部晶振并设置CPU主频为480MHz,打开SWD调试口,打开调试的USART,勾上FMC总线。按以下参数设置。

2.参数配置SDRAM control中按如下设置,这些个参数可以根据实际情况调整,不过调不好SDRAM不能正常工作

3.参数配置SDRAM timing中按如下设置,这些个参数可以微调,不过调不好SDRAM不能正常工作

4.FMC总线的时钟200MHz-240MHz范围左右都可以,如果配成480MHz则SDRAM不能正常工作

5.生成MDK工程后,首先在usart.c中代码保护段里添加如下代码,等下要用到printf函数

6.在fmc.h中代码保护段里添加如下代码,里面声明了三个函数

7.在fmc.c中代码保护段里添加如下代码,在里面实现声明的三个函数。其中最重要的是配置SDRAM时序和控制方式函数。

8.最后在main.c函数中添加如下代码,初始化SDRAM并测试

9.编译完程序后下载到板子上,打开串口调试助手,SDRAM正常工作,完美

留下MDK工程,里面包括CubeMX工程文件,CubeMX用的是V6.0.0,另外我在正点原子F429上这样试过也可以驱动SDRAM。希望大家多动手试试调调。
链接: https://pan.baidu.com/s/1S1w1oSelHUQHHvxJ5Z69bA 提取码: 8ipu

STM32利用STM32CubeMX驱动SDRAM相关推荐

  1. STM32利用库函数驱动OLED

    使用的1.3寸OLED是I2C接口的对外有四个引脚,分别是VCC.GND.SCL.SDL. 首先看一下运行的效果图: 成功在小屏幕上显示"你好". 首先,我们需要配置好STM32的 ...

  2. 基础篇010.2 STM32驱动RC522 RFID模块之二:STM32硬件SPI驱动RC522

    目录 1. 实验硬件及原理图 1.1 RFID硬件 1.2 硬件原理图 2. 单片机与RFID硬件模块分析 3. 利用STM32CubeMX创建MDK工程 3.1 STM32CubeMX工程创建 3. ...

  3. 【STM32】STM32CUBEMX + ADC(单通道,双通道DMA)

    STM32CUBEMX + ADC(单通道,双通道DMA) 案例应用 :使用ADC采集电压(单通道.单通道+DMA.双通道+DMA),并利用串口打印采集转换后的电压值 1.工具 IAR STM32CU ...

  4. 基于STM32的斯特林驱动小车论文

    基于STM32的斯特林驱动小车论文 [内容摘要]:根据"第九届上海市大学生工程训练综合能力竞赛"的规则和要求,设计了一种采用斯特林技术和自动控制技术,自主设计并制作一台可将液态乙醇 ...

  5. STM32CubeMX驱动ADS1118模块

    文章目录 1. 前言 2. ADS1118模块简介 3. 移植源码到工程 4. 驱动源码中函数介绍 4.1 us延时函数 4.2 写入和读取ADS1118配置寄存器 4.3 初始化ADS1118 4. ...

  6. STM32硬件SPI驱动OLED

    文章目录 一.OLED相关 1.OLED简介 2.0.96寸的OLED模块概述 3.模块引脚说明 4.汉字点阵编码原理 二.硬件SPI 1.SPI简介 2.SPI的引脚映射关系 三.SPI驱动的OLE ...

  7. STM32 USB转串口驱动安装不成功出现黄色感叹号解决方法!

    STM32 USB转串口驱动安装不成功出现黄色感叹号解决方法! 参考文章: (1)STM32 USB转串口驱动安装不成功出现黄色感叹号解决方法! (2)https://www.cnblogs.com/ ...

  8. STM32 利用空闲中断接收数据

    STM32 利用串口空闲中断接收不定长数据 利用cubeMX打开DMA串口接收中断 利用CubeMX打开串口中断 HAL_NVIC_SetPriority(USART2_IRQn, 0, 0); HA ...

  9. STM32之继电器驱动(上下拉电阻)

    事情的经过:今天买了一个5V继电器,商家说可以用STM32驱动,所以准备用STM32引脚直接驱动,后来,上午试了2小时,引脚一直有电平变化(配置为推挽输出),但是继电器就是没有反应,直接接上5V的电源 ...

最新文章

  1. Java并发控制基础篇 Thread继承类和Runnable实现类
  2. 广义线性模型_算法小板报(四)——初探广义线性模型和最大熵模型
  3. 【ACL2020】Relabel the Noise: Joint Extraction of Entities and Relations via Cooperative Multiagents
  4. 你越努力,越没有领导潜力
  5. mysql 查询前一个月数据_mysql 查询当天、本周,本月,上一个月的数据......
  6. [SinGuLaRiTy] 二分图匈牙利算法
  7. [C#]简单的理解委托和事件
  8. 在Android 6.0 Marshmallow(API 23)上弃用了getColor(int id)
  9. 单独使用ckfinder选择图片
  10. 推荐一个免费绘制软件架构图的网站
  11. 适合小白的LayaAir使用说明(创建laya的简易程序教程1.0)
  12. h5 app跳转客服咨询 临时会话 (没有开通在线咨询、无法会话)
  13. 服务器和交换机物理连接_「网络安全」网络设备篇(6)——四层交换机
  14. (翻译)导航栏按钮的5类常见设计错误
  15. 深入了解MSB和LSB
  16. 关于Idea合并不同分支代码你怎么看
  17. 常用 XSS Payload
  18. 未来低功耗计算机,一种低功耗计算机主板
  19. 解决 system_stm32f0xx.o(.data) type RW incompatible with main.o type ZI in er RW_IRAM1.
  20. wifi信号衰减与距离关系_wifi无线信号传输衰减和距离的关系公式[室内定位]

热门文章

  1. poj 1080 Human Gene Functions (最长公共子序列变形)
  2. Visual Studio 2015完全卸载
  3. Qt TCP服务端和客户端连接
  4. yml配置文件特殊字符处理
  5. 移动互联网发展的未来前景和趋势
  6. 剑指Offer第二版Java代码实现
  7. 山寨机,攒手机,3G时代手机发展网络多媒体化的趋势
  8. 基于最基础的GAN生成动漫头像
  9. OpenWrt下通过EC20 R2.0 4G模块实现qmi拨号上网
  10. HART协议通用结构体及地址、常量的定义