本人是新手,最近再做一个串口接收字符串到buffer,然后把buffer里的数据写到SD卡里,FAT文件系统我是移植了官方的,串口能正常接收数据,也能写卡,但是我把SD卡插到电脑上查看写的结果时,显示乱码,请教各路大神,这是为什么?这是我写的SD卡写文件函数:
void WriteSDFile(unsigned char * USARTx_RX_BUF)
{
disk_initialize(0);//初始化SD卡
f_mount(0, &fs);//装在文件系统到0区
res=f_open(&fsrc, "test.txt", FA_OPEN_ALWAYS | FA_WRITE); //打开文件,可以追加
if(res == FR_OK)
{
f_lseek(&fsrc, fsrc.fsize);//移动文件指针
res = f_write(&fsrc, &USARTx_RX_BUF, NUM_SAVE-1, &br);//写文件
f_close(&fsrc);
if(res == FR_OK)//指示灯
{
GPIO_SetBits(GPIOF,GPIO_Pin_7);
Delay(50);
GPIO_ResetBits(GPIOF,GPIO_Pin_7);
Delay(50);
}
}
}
这是在电脑查看是显示的乱码: