使用Fatfs编写uint32_t数组

时间:2016-04-08 06:42:45

标签: c microcontroller freertos lpc

我在LPC微控制器上有FreeRTOS。我有一个大小为10的uint32_t数组。我想使用f_write将此数组写入SD卡。我可以成功写文本,但每当我尝试编写数组时,它总是写垃圾。如何在每个值之间用空格写数组?

感谢@ user694733的帮助。我使用sprintf函数转换为字符串,现在它写得很好。还有什么方法可以在循环中转换数组。这就是我现在正在做的事情

所以要转换我首先将它们写入数组的10个值,然后使用像这样的sprintf

array[index] = values; 
index += 1; 

sprintf(buffer,"%lu,%lu,%lu,%lu,%lu,%lu,%lu,%lu,%lu,%lu,",array[0],array[1],array[2],array[3],array[4],array[5],array[6],array[7],array[8],array[9]);

无论如何都要这样做

sprintf(buffer, ",%lu,",array[index]);

1 个答案:

答案 0 :(得分:0)

f_write以二进制格式写入数据。

如果要以文本格式输出,请先将数字转换为snprintf的字符串,或使用支持普通printf-functionalality子集的FatFS f_printf