本人是新手,最近再做一个串口接收字符串到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);
- }
- }
- }
复制代码这是显示乱码的图片(我用记事本打开的文件):
-
显示乱码
一周热门 更多>