我正在使用微控制器,正在尝试将一些传感器中的一些数据写入SD卡上的.txt文件中,然后将SD卡放入读卡器中,并在PC上读取数据。
有谁知道如何从头开始为FAT32文件系统编写.txt文件?我没有要调用的任何预定义代码/方法/函数,我需要从一无所有创建代码。
对于特定的编程语言,这不是问题,这就是为什么我标记了不止一种。稍后,我可以将代码从C或Java转换为我选择的编程语言。但是我似乎找不到任何类型的语言都这么低级的方法/功能:)
有任何想法吗?
最佳答案
FatFs非常好,并且高度可移植。它支持FAT12,FAT16和FAT32,长文件名,查找,读取和写入(其中大多数功能都可以打开和关闭以更改内存占用量)。
如果您确实对内存紧张,还可以使用Petit FatFs,但是默认情况下它没有写支持,添加它会需要一些工作。
在mounting驱动器之后,您只需open一个文件即可创建它。例如:
FATFS fatFs;
FIL newFile;
// The drive number may differ
if (f_mount(0, &fatFs) != FR_OK) {
// Something went wrong
}
if (f_open(&newFile, "/test.txt", FA_WRITE | FA_OPEN_ALWAYS) != FR_OK) {
// Something went wrong
}
如果确实需要仅使用自己的代码创建文件,则必须遍历FAT,查找空白空间,然后创建新的LFN条目(用于存储文件名)和DIRENT(用于指定磁盘上的群集)将保存文件数据。)除非有某种家庭作业/实验室练习,否则我看不到任何理由。无论如何,您都应该先做reading about the FAT structure并在开始后再返回一些更具体的问题。