Mark、您好!
我使用 TMS320F28379D 写入 SD 卡上的文本文件,但是正如本文前面所述,速度真的很慢……
我不知道这是否已经解决了。
基本上、我的代码如下所示、现在我将以循环方式在 SD 卡上的文本文件中写入虚拟变量...但是、要为60000倍的循环写入虚拟变量、所需时间大约为45秒、我将以12.5MHz 的频率运行 SPI ...对此有任何见解 我可以提高速度吗?
char CH1_String_SD[20]="";
char CH2_String_SD[20]="";
CHAR CH3_String_SD[20]="";
CHAR CH4_String_SD[20]="";
CHAR CH5_String_SD[20]="";
char all_5_channels[102]="";
字 btrb = 102;//每次写入4个字节的字节数和制表符空间
字 BRB = 102;
f_open (&fil、"PSI.txt"、fa_create_always);
f_close (&fil);
f_open (&fil、"PSI.txt"、fa_write);
对于(SD_loop2 = 0;SD_loop2 < 60000;SD_loop2++)
{
//向 SD 卡写入5个字,每个字32位//
InitData1_X = 4294967;// X 轴虚拟
InitData2_Y = 11005547;// Y 轴虚拟
InitData3_Z = 14789421;// Z 轴虚拟
InitData4_T = 16723899;//温度虚拟
InitData5 = 12345;//编码器虚拟
Channel1_SD = InitData1_X;
CHANNEL2_SD = InitData2_Y;
CHANNEL3_SD = InitData3_Z;
CHANNEL4_SD = InitData4_T;
CHANNEL5_SD = SD_loop2;
ltoa (Channel1_SD、CH1_String_SD);
LTOA (CHANNEL2_SD、CH2_String_SD);
LTOA (CHANNEL3_SD、CH3_String_SD);
LTOA (CHANNEL4_SD、CH4_String_SD);
LTOA (CHANNEL5_SD、CH5_String_SD);
strcpy (all_5_channels、CH1_String_SD);// 20字节
strcat (all_5_channels、CH2_String_SD);// 20字节
strcat (all_5_channels、CH3_String_SD);// 20字节
strcat (all_5_channels、Ch4_String_SD);// 20字节
strcat (all_5_channels、CH5_String_SD);// 20字节
strcat (all_5_channels、newline);// 2字节
f_write (&fil、&all_5_channels、btrb、&BRB);
}
谢谢
Johann

