多语言展示
当前在线:1863今日阅读:19今日分享:20

36.STM32的SPI-FLASH实验

今天小编来做一下STM32F407的CAN通信实验。通过按上键将数据写入外部FLASH,通过下键读出外部FLASH中数据,并将数据显示在TFTLCD和串口助手上。STM32F407和外部FLASH之间的通信使用的是FLASH芯片支持的SPI。
工具/原料
1

STM32F407

2

keil5

方法/步骤
1

下图是开发学习板上FLASH的通信原理图,可以从图中看到FLASH和芯片之间是如何进行连接的,如下图:

2

这个按键控制的实验是基于上个实验项目的基础上,首先复制上个【FSMC-TFTLCD显示实验实验】实验,然后命名为【SPI-FLASH实验】,如下图:

3

打开项目,然后新建一个spi.c的文件,这个文件用于存放spi的驱动,并将这个文件存储到APP文件夹下的SPI文件夹下,如下图:

4

然后新建一个spi.h的文件,并将这个文件存储到APP文件夹下的SPI文件夹下,如下图:

5

然后新建一个flash.c的文件,这个文件用于存放flash的驱动,并将这个文件存储到APP文件夹下的FLASH文件夹下,如下图:

6

然后新建一个flash.h的文件,并将这个文件存储到APP文件夹下的FLASH文件夹下,如下图:

7

找到spi.c文件和flash.c文件,并将spi.c文件和flash文件和项目APP文件夹进行关联,如下图:

8

接下来按照下图将spi.h头文件和flash.h头文件也包含到项目中,如下图:

9

然后准备将stm32f4xx_spi.c文件关联到项目的StdPeriph_Driver文件,按照下图中红色箭头指示步骤点击【Add Existing Files to Group】,如下图:

10

找到stm32f4xx_spi.c文件(该文件存放在Libraries文件夹下的STM32F4xx_StdPeriph_Driver下的src文件夹下),将stm32f4xx_spi.c文件和项目进行关联,如下图:

11

下图是main.c文件的代码,如下图:

12

下图是flash.c文件的代码,如下图:

13

下图是flash.h文件的代码,如下图:

14

下图是spi.c文件的代码,如下图:

15

下图是spi.h文件的代码,如下图:

16

至此所有代码都结束,对所有代码进行编译,0错误,0警告,接下来就可以将代码下载到开发学习板中开始观察现象了,如下图:

17

下载代码后,在电脑上打开串口助手,按学习开发板上的上按键和下按键,观察串口助手显示以及开发学习板上显示屏上的显示,如下图:

注意事项
1

个人观点,仅供参考。

2

感谢阅读。

推荐信息