步骤
步骤讲解与结果截图 | |
步骤1:创建STM32CUBEIDE工程(根据自己的开发板,配置RCC,选择最低版本固件库) | |
2:查看FLASH与自己板子的接线图 |
|
3:根据FLASH时序特点,这个芯片采用MSB先行,一般采用模式0(初始低电平,采集第一个边沿)与模式3(初始高电平,采集第二个边沿)的时钟,SPI采用的摩托罗拉的设计,所以我们将SPI配置如下 | |
4:调整引脚 | 由于我们发现系统配置的SPI1的引脚与我们开发板的引脚标号PB3,PB4,PB5不一致,所以我们要对SPI1进行调整引脚 |
5:配置NSS脚 | 由于NSS片选引脚需要我们用软件配置,所以我们将原理图上的PG6的NSS脚,配置为GPIO的输出模式,方便控制FLASH芯片的工作接入与否 |
6:由于FLASH的传输机制与EEPROM不同,读写数据前需要发送对应编码的指令,所以FLASH的指令众多,功能众多,所以要学会移植FLASH的驱动(移植!=抄,要读懂驱动代码,移植才比较快,否则你要移植很久,可能还是会失败),而且今后移植驱动也是家常便饭的事情 | 1:将厂商给我们的BSP驱动程序复制到我们的项目(需要提前把待移植的代码保存为GB2312编码,再移植到我们项目,并且把我们的项目编码也设置为GB2312,才不会出现移植的文件中文乱码的情况) 2:)为了验证我们是否移植成功,我们还需要将mian函数里面的测试代码给移植过来 |
7:串口使能 | 在移植过程中,我们发现需要用到上位机进行显示,所以我们将串口配置好,串口的配置很简单,只需要选择异步模式就ok |
8:移植过程介绍 | 技巧:有时需要批量替换一个单词可以选中单词,右键点击Refactor重建,然后选择Rename 1)移植过程主要是移植 |
9:移植验证 | |
10:阅读支持包驱动代码 | 移植完后,不要就不管了,一定要看FLASH厂商给的驱动流程 |
下面附上CSND博客地址:
https://blog.csdn.net/qq_42150119