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.

[参考译文] MSP430FR5994:使用 FatFS 以二进制形式写入 SD 卡

Guru**** 2577385 points
Other Parts Discussed in Thread: MSP430FR5994

请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/microcontrollers/msp-low-power-microcontrollers-group/msp430/f/msp-low-power-microcontroller-forum/610527/msp430fr5994-using-fatfs-to-write-to-an-sd-card-in-binary

器件型号:MSP430FR5994

大家好

我最近收购了 MSP430FR5994 Launchpad、并尝试根据我的需求调整开箱即用体验的元素。 我想将二进制数据写入 SD 卡、但在研究演示中包含的 FatFS 库时、我无法找到有关如何执行此操作的信息。

根据我的理解、可以通过将"WB"输入为使用 fopen 时的模式来选择二进制写入模式、如下链接所述:

http://www.cplusplus.com/reference/cstdio/fopen/

但是、FatFS 库使用 f_open、并且我无法找到如何选择二进制模式。 以下链接记录了该函数、该函数与 fopen 类似、使用"r"、"r+"、"w"等、但没有提及二进制文件。

elm-chan.org/.../open.html

是否有方法使用 f_open 来选择二进制模式? 或者、我已经尝试用 fopen 替换它(在这个阶段、正如演示那样、写入一个.txt 文件)、但几乎没有成功。 请提供关于如何这样做的任何指导。

谢谢

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    FatFS 实际上没有文本/二进制模式:
    1) f_read/f_write 使用字节--如果您只使用这些字节,则会得到相当于二进制模式的字节。
    2) f_getc/f_gets/et 执行一些类似于 stdio 的操作--如果你只使用这些,你就会得到等效的文本模式。 [免责声明:我实际上没有使用过这些。]
    如果你将这两者混合在一起、我不确定会发生什么情况。

    可能是有人在 FatFS 顶部编写了一个 stdio 图层(例如 fopen)、但我没有遇到过它。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    你好 Bruce

    感谢您的回复、我将介绍如何单独使用 f_read 和 f_write 来实现该库