如题,我定义了uint16_t ADC_ConvertedValue1[100];//ADC采样结果缓存,16为的
uint8_t buf1[1200];//要写入SD卡的数据缓存,我个人理解(不知道对不对):因为SD卡写入的数据只能是八位的
所以我进行了:buf1[0]=(uint8_t)(ADC_ConvertedValue6[0]>>8);
buf1[1]=(uint8_t)(ADC_ConvertedValue6[0]);//把16位的ADC数据分离,然后分别赋给buf1
但是写到SD卡里面是一堆乱码,而写入的总文件大小和程序设计的一样,请问各位兄弟,这个问题怎么解决?感谢!
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
---------------------------------
照原子哥的意思,我进行了操作
u16 ADC_ConvertedValue1[100];//ADC数据缓存数组
然后在DMA产生中断时,直接进行res=f_write(f_jpg,(u8*)ADC_ConvertedValue1,200,&bwr);将ADC_ConvertedValue1的数据写入SD卡。但是在电脑打开SD卡时,发现还是一堆乱码?请问原子哥,我这样的做法对吗?需要什么改进?感谢您的帮助!
SD卡里的乱码是这样的:
一周热门 更多>