工具与软件:
我的固件系统使用 MSP432E401器件、使用 FreeRTOS 并使用作为 TI 驱动程序或第三方提供的 SDFatFS 驱动程序。
我将 SD 卡连接到其中一个 SPI 端口、一切都运行良好。 我可以写入和读取文件而不会出现任何问题。
我的问题是创建文件时日期戳是错误的。 打开文件时、我确实看到了正确的 UNIX 时间、但在查看创建的文件时、文件创建日期未显示相应的日期。
我已在下面设置 Unix 时间。
SDFatFS_Handle SDHandle = NULL;
// add_device()应该被调用一次、并用于所有媒体类型
ADD_DEVICE (fatfsPrefix_2、_msa、ffcio_open、ffcio_close、ffcio_READ、
ffcio_write、ffcio_lseek、ffcio_unlink、ffcio_rename);
//初始化实时时钟*
CLOCK_settime (clock_REALTIME、ts);
//安装 SD 卡
sdHandle = mOpenSdCardHandle();
我测试了 TI 提供的示例、其中预设了 Unix 时间、即使在示例中、日期也不正确。 我还注意到,无论你把12月的任何一个月都不被记录为一个文件创建日期。
TI 提供了两个 FatFs 示例:一个不带 RTOS、另一个使用 FreeRTOS。 您可以在两个示例中的任何一个中测试该问题。
需要注意的是、在休眠模块中、我不使用 RTC 的日历工作模式。
感谢任何帮助。