标题可能会误导人,但我觉得写不出一个准确的标题。抱歉。
我正在为 AVR 开发一个“部分”FAT32 驱动程序,用 C 语言编写。我正在尝试编写一个函数,基本上从目录中读取 4 个有效条目(跳过 LFN 和空条目)到缓冲区中.该函数跟踪当前集群,以及集群内的当前偏移量(以 32 递增,因为条目为 32 字节)。
现在我的问题是,我需要函数能够向前读取四个条目(例如,从当前偏移量开始的接下来的 4 个条目),或向后读取四个条目(在当前偏移量之前)。我现在的问题是向后读取时的边缘情况,您可能在当前集群上有一些条目,在前一个集群上有一些条目。我是否应该跟踪数组中已读取的所有簇号以便向后遍历?我只是在寻找一些关于什么是优雅解决方案的指示。
提前致谢!
最佳答案
这取决于你可用的 RAM,但是当你不需要很快得到结果时,我建议不要缓存内容。
顺便说一句。你为什么要重新发明轮子?您可以只使用像 elm 的胖文件系统这样的东西。
关于c - AVR FAT 驱动程序设计,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37244810/