大家好、
我在 SDK 中使用了 fatsd 例程、
我目前想要实现 CC2652的存储 SD 卡功能,但现在遇到了一些问题:
刻录完成后、我在程序运行期间仍然在串行端口上看到一个错误。

在达到启动文件复制函数后、例程停止的原因是什么?
谢谢!此致!
约兰德
This thread has been locked.
If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.
大家好、
我在 SDK 中使用了 fatsd 例程、
我目前想要实现 CC2652的存储 SD 卡功能,但现在遇到了一些问题:
刻录完成后、我在程序运行期间仍然在串行端口上看到一个错误。

在达到启动文件复制函数后、例程停止的原因是什么?
谢谢!此致!
约兰德
尊敬的 Yolande:
我假设您参考的是 Fatsdraw 示例 和 SDFatFS TI 驱动程序。 您是否正在使用 BOOSTXL-SHARP128 和 LP-CC2652RB? 在查看 fatsdraw.c 文件时、执行似乎没有超过 while 语句。
/* Copy the contents from the src to the dst */
while (true)
{
/* Read from source file */
fresult = f_read(&src, cpy_buff, CPY_BUFF_SIZE, &bytesRead);
if (fresult || bytesRead == 0)
{
break; /* Error or EOF */
}
/* Write to dst file */
fresult = f_write(&dst, cpy_buff, bytesRead, &bytesWritten);
if (fresult || bytesWritten < bytesRead)
{
Display_printf(display, 0, 0, "Disk Full\n");
break; /* Error or Disk Full */
}
/* Update the total number of bytes copied */
totalBytesCopied += bytesWritten;
}
您可以进一步研究 CCS 调试器和附加的 Debug_printf 语句、以确定程序到底被卡住的位置。 我还建议 删除现有的 a1.txt、尝试其他 SD 卡、或重新格式化 SD 卡。
此致、
瑞安
您好、Ryan、
我正在使用 fatsd示例 和 LP-CC2652RB 、但不使用 BOOSTXL-SHARP128
我正在使用我设计的 SDcard。
它们直接通过硬件电路板连接。

在查看 fatsd.c 文件时、执行似乎不会超过 while 语句。

谢谢、此致、
约兰德
为了让此代码执行得更远、似乎表明 SD 卡是有效的、并使用 FAT 文件系统进行了格式化。 您之前的失败与"错误..."不同 和"中止..." 显示在您的屏幕上。 在代码执行的不同区域内观察到错误 可能表明硬件设置不稳定。 我建议您检查物理连接、并使用逻辑分析仪或示波器进一步评估 SPI 线路。 我还建议获取 SHARP128 BoosterPack、以便对示例预期运行时的设置进行评估。 此外、确保 DIO20保持高电平、因为这可以防止共享同一 SPI 总线的外部闪存器件受到干扰。
此致、
瑞安