明确对spi_flash写操作的流程:去保护 -> 擦除 -> 烧写。
完成各模块的函数
4.1 去保护操作(去“两层保护”:状态寄存器,数据存储区)
—将“两次去保护”放在SPI_Flash_Init函数
—去状态寄存器保护:SPI_Flash_ClearProtect_ForStatusRegs
—去数据存储区保护:SPI_Flash_ClearProtect_ForData
—去保护函数的子函数
读两个状态寄存器的值:SPI_Flash_ReadStatusReg1()、SPI_Flash_ReadStatusReg2
写两个状态寄存器的值:SPI_Flash_WriteStatusRegs()
4.2 擦除(需要一段时间)
4.3 (烧)写操作
4.4 读操作
4.5 以上的写寄存器值、擦除、烧写均需要使能函数和等待函数
使能函数:SPI_Flash_Enable()
等待函数:SPI_Flash_Wait_WhenBusy()
在头文件spi_flash.h中添加需要给外部提供的函数,并在main.c文件中调用并实现打印。
—在spi_flash.h中添加需要给外部提供的函数
—main函数中调用
上传文件,编译成功后,烧写新的i2c.bin文件,观察串口打印以及OLED打印(如图)
—编译成功
—串口打印
—OLED打印
12/30/2017 12:25:13 AM