USART_RX_BUF[]为串口接收到的数据,将其写入到sd中,调试助手按照16进制发送 7b 00 00 00 00 00 01 01 00 01 00 00 00 00 00 00 00 00 00 7d
无法写入数据,但是将USART_RX_BUF[] =“abcdefghijk”字符型的即可成功读出写入,我试着将收到的数据USART_RX_BUF[i]=USART_RX_BUF[i]+'0'处理,写入的数据为
?00001101000000000
还是不对,求大神帮忙看一下?
res=f_open(file,"0:/test4.txt",FA_OPEN_ALWAYS|FA_WRITE);
if(!res)
{
res=f_write(file, USART_RX_BUF,sizeof(USART_RX_BUF)-1,&bw);
}
if(!res)
{
f_close(file);
printf(" write success!
");
}
res=f_open(file,"0:/test4.txt",FA_READ);
if(!res)
{
res=f_read(file,sd_buf,sizeof(USART_RX_BUF)-1,&bw);
if(!res)
{
printf("%s
",sd_buf);
f_close(file);
}
}
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
一周热门 更多>