目录
1.实验目标
本实验主要使用按键KEY2写入字符串到flash中,再用KEY4读取flash,LCD显示出来。
2.实验准备
硬件搭建:ZW-HC32F460-BZ标准版开发板1套
软件搭建:MDK5.22
3.硬件原理
HC32F460开发板板载flash芯片为W25Q64,存储大小64M/bit-8M/bits,8M存储分128个块,一个块64KB,一个块分16个扇区,一个扇区4KB。一次擦除大小可以为16页(4KB)、128页(32KB)、256页(64KB)或者全擦除,每页大小256bytes,总共32768页,支持SPI模式0和模式3。
上图中的W25QXX引脚基本兼容W25Q所有系列的产品,本次实验使用SPI模式。W25Q在SPI模式下,接线示意表如下所示:
编号 |
W25Q引脚 |
MCU引脚 |
|
IO0 |
PD8(MOSI) |
|
IO1 |
PD9(MISO) |
|
CLK |
PC6 |
|
CS |
PC74. |
4.驱动代码
【W25Q初始化函数】
函数原型: void SPIint( void )
功能说明: 初始化SPI
输入参数: 无
输出参数: 无
特殊备注: 无
void SPIint( void )
{
stc_spi_init_t stcSpiInit;
stc_port_init_t stcPortInit;
SPI_DeInit( SPI_UNIT );
/* configuration structure initialization */
MEM_ZERO_STRUCT(stcPortInit);
/* configuration structure initialization */
MEM_ZERO_STRUCT( stcSpiInit );
/* Configuration peripheral clock */
PWC_F