ST意法半导体
直播中

fdvcxhtg

8年用户 968经验值
擅长:嵌入式技术
私信 关注
[问答]

STM32F105写入大于12 KB的文件时文件系统中断是什么问题造成的?

你好!如果我写的小于 12KB #MSD工作正常。如果我写入超过 12KB,Windows7 会要求我格式化驱动器。如果 MSD 没有重新连接到 PC,一切正常。如果我将设备重新连接到 PC,一切都会崩溃。请告诉我可能出了什么问题?
我正在使用页面大小为 264 B(2048 页)的闪存 [AT45DB041]
定义看起来像这样
存储_BLK_NBR 1024
STORAGE_BLK_SIZ 512
写操作看起来像这样
int8_t STORAGE_Write_FS(uint8_t lun,uint8_t *buf,uint32_t blk_addr,uint16_t blk_len)
{
  /* 用户代码开始 7 */
  AT45dbxx_WritePage(buf, 256, (uint16_t)blk_addr*2);
  AT45dbxx_WritePage(buf+256, 256, ((uint16_t)blk_addr*2)+1);
  返回(USBD_OK);
  /* 用户代码结束 7 */
}
我写了两页 256 字节
W/R 内存操作正常。
内存寻址也能正常工作。检查所有 2048 页的读/写








回帖(1)

单其莹

2023-1-17 09:24:42
你需要擦除块吗?
似乎不处理多个块写入。
测试 USB 操作之外的读/写功能。
举报

更多回帖

发帖
×
20
完善资料,
赚取积分