硬汉嵌入式论坛

 找回密码
 立即注册
查看: 1064|回复: 2
收起左侧

[FileX] 每次写入超过510字节就出错

[复制链接]

5

主题

16

回帖

31

积分

新手上路

积分
31
发表于 2024-8-4 21:46:12 | 显示全部楼层 |阅读模式
按照ARMFLY的模板移植了Filex,能读写文件,但是仍然有问题:
1,fx_media_open 中的 media_memory到底应该多大?手册和官方例程中都是和扇区一样大小,armfly的模板确实32kB;
2,试了很多次写入,每次写入最多510字节,再多(即使是512字节)就出错,FX_IO_ERROR;这似乎和media_memory大小无关;
3,要写入长的字符数组,每次写500字节,连续多次写入都不会出错。
谢谢指教

回复

使用道具 举报

1万

主题

7万

回帖

11万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
117530
QQ
发表于 2024-8-5 09:35:47 | 显示全部楼层
楼主是移植到那个芯片上,底层驱动里面有个单扇区的API操作,还是有个multi扇区的API操作,估计是这个操作失败了。


猜测可能是DMA的4字节对齐问题,楼主可以考虑将底层操作的读写API换成用查询方式的,不使用DMA方式的,看看是否正常。
回复

使用道具 举报

5

主题

16

回帖

31

积分

新手上路

积分
31
 楼主| 发表于 2024-8-6 11:08:15 | 显示全部楼层
解决了,是在CUBEMX中DMA中断的优先级没有更改,用的是默认优先级 0,改成14就好了。谢谢
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|小黑屋|Archiver|手机版|硬汉嵌入式论坛

GMT+8, 2025-8-12 18:11 , Processed in 0.044801 second(s), 24 queries .

Powered by Discuz! X3.4 Licensed

Copyright © 2001-2023, Tencent Cloud.

快速回复 返回顶部 返回列表