MG32F10x Standard Peripherals Firmware Library
QSPI_QuadSPI_FLASH example
  *************** (C) COPYRIGHT 2020 - 2023 megawin Technology ***************
  * @file    SPI/QSPI_QuadSPI_FLASH/readme.txt 
  * @author  megawin Application Team
  * @version V0.1.10
  * @date    05-January-2023
  * @brief   Description of the SPI QSPI_QuadSPI_FLASH example.
  ******************************************************************************
  * THE PRESENT FIRMWARE WHICH IS FOR GUIDANCE ONLY AIMS AT PROVIDING CUSTOMERS
  * WITH CODING INFORMATION REGARDING THEIR PRODUCTS IN ORDER FOR THEM TO SAVE
  * TIME. AS A RESULT, MEGAWIN SHALL NOT BE HELD LIABLE FOR ANY DIRECT,
  * INDIRECT OR CONSEQUENTIAL DAMAGES WITH RESPECT TO ANY CLAIMS ARISING FROM
  * THE CONTENT OF SUCH FIRMWARE AND/OR THE USE MADE BY CUSTOMERS OF THE
  * CODING INFORMATION CONTAINED HEREIN IN CONNECTION WITH THEIR PRODUCTS.
  ******************************************************************************
例程描述

本例程演示如何通过Quad SPI接口与SPI FLASH通信。

本例程系统时钟工作在96Mhz,通过PLL配置产生。PLL时钟源是外部8Mhz晶振。APB1的分频比是1,APB2的分频比是1。

首先是读取SPI Flash ID并打印输出;然后通过Quad SPI接口读取ID并打印。

然后使用SPI FLASH驱动程序擦除要访问的扇区,将WriteData中的数据通过Quad SPI接口写入存储器; 然后通过Quad SPI接口读取存储器,数据存放在ReadBuffer中。然后将ReadBuffer的数据与WriteData中的期望值进行比较。并打印输出比较结果。

为了避免TX FIFO下溢或RX FIFO上溢,QSPI的通信速率不应过快;所以在本例中,QSPI通信速率被配置为 2.4 Mbit/s。

目录内容
  • SPI/QSPI_QuadSPI_FLASH/QSPI_QuadSPI_FLASH.uvprojx MDK5工程文件
  • SPI/QSPI_QuadSPI_FLASH/QSPI_QuadSPI_FLASH.uvoptx MDK5工程配置文件
  • SPI/QSPI_QuadSPI_FLASH/JLinkSettings.ini Jlink配置文件
  • SPI/QSPI_QuadSPI_FLASH/main.c 主程序
  • SPI/QSPI_QuadSPI_FLASH/drv_spi_flash_quad.c QSPI Flash驱动程序
  • SPI/QSPI_QuadSPI_FLASH/drv_spi_flash_quad.h QSPI Flash驱动程序头文件
硬件和软件环境
  • 硬件平台搭建
    • HSE 连接外部8MHz晶振
    • QSPI管脚和QSPI FLASH连接如下:
      • QSPI_NSS0 (PA4) 管脚连接到 QSPI Flash CS (pin1)
      • QSPI_SCK (PA5) 管脚连接到 QSPI Flash CLK (pin6)
      • QSPI_MI_IO1 (PA6) 管脚连接到 QSPI Flash DO(IO1) (pin2)
      • QSPI_MO_IO0 (PA7) 管脚连接到 QSPI Flash DI(IO0) (pin5)
      • QSPI_IO2 (PB0) 管脚连接到 QSPI Flash /WP(IO2) (pin3)
      • QSPI_IO3 (PB1) 管脚连接到 QSPI Flash /HOLD(IO3) (pin7)
如何使用?

为了使程序工作,您必须执行以下操作 :

  • 使用 MDK5 打开此例程文件夹中的 QSPI_QuadSPI_FLASH.uvprojx 工程
  • 重新编译该工程并下载到目标存储器中
  • 运行此例程

    © COPYRIGHT 2020 - 2023 megawin Technology