正在做一个项目,需要用STM32读一下TF卡,网上下了一个可以写TF卡的程序,稍改了一下,加入了读TF卡的程序,但是出现一个问题,读之前程序写进数据,可以读出,当自己在TF卡上创建一个TXT文件,却出现了无法读取的错误。
读TF程序如下:
ret = 1;ret = MSD_Init();
SD_Card_Ready = ret;//ret=0:证明Ready
res=f_mount(0, &fs);//res=0:证明OK
res=f_open(&fsrc,"DateTime.txt", FA_OPEN_EXISTING | FA_READ);
res = f_read(&fsrc, buffer, 20, &br);
f_close(&fsrc);
DateTime.txt内容如下
10:20:30 23/5/2017
经过几天的不断试错,终于发现是读取的字节过多导致出错,最后把res = f_read(&fsrc, buffer, 20, &br);改成res = f_read(&fsrc, buffer, 19, &br);,终于可以正常读取。