打印

移植原版FatFs r0.11,disk_read传入的sector参数竟然是块号,不是块地址、、、

[复制链接]
183|0
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
移植fatfs,被这个地方摆了一道,分享下,各位少走弯路:


这个sector,不能直接给cmd18用,需要再乘以扇区尺寸(512)
位置:diskio.c
DRESULT disk_read (
        BYTE pdrv,                /* Physical drive nmuber to identify the drive */
        BYTE *buff,                /* Data buffer to store read data */
        DWORD sector,        /* Sector address in LBA */
        UINT count                /* Number of sectors to read */
)



移植fatfs r0.11,f_open打开文件系统,能读到第一个扇区,0x55 0xaa妥妥的,然后完犊子了,check_fs函数过不了,/* Check "FAT" string */失败,返回1



追踪变量,发现最终读取的时候,我的底层函数,cmd18后边的扇区地址就是直接用的,就是传过来的sector

使用特权

评论回复

相关帖子

发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

384

主题

384

帖子

0

粉丝