elephant00 发表于 2025-3-27 12:57

GD32450i-EVAL开发板U盘例程存储从内部sram改为外部flash芯片不成功的问题

项目开发中需要存图片到外部flash中,使用GD32450i-EVAL开发板U盘例程,修改存储空间从内部sram改为外部flash芯片,只改了STORAGE_Init、STORAGE_Read、STORAGE_Write三个函数,还有扇区大小和数量。修改后枚举可以成功,格式化也提示成功,但不可读写,有大神可以指点一下吗

t1ngus4 发表于 2025-4-18 14:38

确保Flash已正确初始化,在STORAGE_Init()中需要先完成外部Flash的硬件初始化

d1ng2x 发表于 2025-4-18 16:06

可以检查一下Flash ID,读取Flash芯片ID确认通信正常

b5z1giu 发表于 2025-4-18 17:21

确保STORAGE_BLK_NBR和STORAGE_BLK_SIZ匹配实际Flash容量

lamanius 发表于 2025-4-18 19:15

文件系统对齐要求,通常需要扇区大小为512字节的整数倍

su1yirg 发表于 2025-4-18 21:28

需要注意的是地址转换,将LBA地址转换为物理地址,读取长度检查:确保不越界

p0gon9y 发表于 2025-4-18 22:43

Flash写入前需擦除,确保目标区域已擦除

w2nme1ai7 发表于 2025-4-19 08:50

写入对齐,考虑Flash的页写入要求

tax2r6c 发表于 2025-4-19 10:08

Flash芯片的写保护,检查Flash的WP引脚状态,必要时在初始化时解除写保护

q1d0mnx 发表于 2025-4-19 13:16

文件系统格式问题,虽然格式化提示成功,但实际可能未正确完成,尝试在PC上使用磁盘管理工具重新格式化

kaif2n9j 发表于 2025-4-19 15:14

建议可以降低SPI时钟频率测试,检查SPI模式是否匹配Flash要求
页: [1]
查看完整版本: GD32450i-EVAL开发板U盘例程存储从内部sram改为外部flash芯片不成功的问题