GD32450i-EVAL开发板U盘例程存储从内部sram改为外部flash芯片不成功的问题
项目开发中需要存图片到外部flash中,使用GD32450i-EVAL开发板U盘例程,修改存储空间从内部sram改为外部flash芯片,只改了STORAGE_Init、STORAGE_Read、STORAGE_Write三个函数,还有扇区大小和数量。修改后枚举可以成功,格式化也提示成功,但不可读写,有大神可以指点一下吗 确保Flash已正确初始化,在STORAGE_Init()中需要先完成外部Flash的硬件初始化 可以检查一下Flash ID,读取Flash芯片ID确认通信正常 确保STORAGE_BLK_NBR和STORAGE_BLK_SIZ匹配实际Flash容量 文件系统对齐要求,通常需要扇区大小为512字节的整数倍 需要注意的是地址转换,将LBA地址转换为物理地址,读取长度检查:确保不越界 Flash写入前需擦除,确保目标区域已擦除 写入对齐,考虑Flash的页写入要求 Flash芯片的写保护,检查Flash的WP引脚状态,必要时在初始化时解除写保护 文件系统格式问题,虽然格式化提示成功,但实际可能未正确完成,尝试在PC上使用磁盘管理工具重新格式化 建议可以降低SPI时钟频率测试,检查SPI模式是否匹配Flash要求
页:
[1]