c - 在 uC-OS/II 中从 USB 内存棒读取/写入文件

标签 c rtos usb-flash-drive micrium

我有一 block 带有 ARM 处理器和 micrium 实时操作系统的电路板。我需要从 USB 内存棒读取/写入文件。例如标准函数,重命名文件是下一个 -

int FS_Rename (const char * sExistingName,
               const char * sNewName);

我需要将哪个路径写入 sExistingName 以指向我的 USB 内存棒上的文件?

最佳答案

拥有“正确的道路”并不那么简单; RTOS 本身不包括文件系统或 USB 支持,如果您使用 Micrium 的文件系统,您仍然需要 USB 大容量存储设备支持才能访问此类设备。

如果您透露您使用的是什么 ARM 设备(如果是 COTS,甚至是什么板),这将有所帮助; ARM 内核本身不定义任何特定的外设集;这是由在许可下使用 ARM 内核的芯片供应商决定的。

如果 USB Controller 在芯片上,微 Controller 供应商可能会免费提供示例大容量存储设备代码。然而,您需要的 USB 主机或 OTG 堆栈(相对于设备堆栈)更复杂,而且很少免费而且通常很昂贵。

此外,您的微 Controller 将需要一个主机或 OTG Controller ,而不是一个更简单、更常见的设备 Controller 。使用设备 Controller ,您的目标可以 大容量存储设备,但它不能访问


[编辑]

Micrium 提供 USB host stack与他们的文件系统兼容。如果您正在使用他们的文件系统,那将是阻力最小的路径,但您仍然需要目标上的主机 Controller 硬件。

关于c - 在 uC-OS/II 中从 USB 内存棒读取/写入文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4398754/

相关文章:

c - 在 Intel X_86 和 ARM 架构上转储两个相邻的 C 数组时出现奇怪的不同结果

c - 在循环内的动态数组中分配的运行时堆栈大小

c - 单个线程中函数调用的跟踪,似乎没有按预期顺序进行

installation - 从闪存驱动器运行 SAS 9.4

android - 如何找到挂载到android的USB路径?

c++ - 在 C++ 中分区和格式化 USB 闪存驱动器时出错

c++ - 精确返回 double

c - 当仅更改其输入参数时显示对 sin 的 undefined reference

编译器相关 - 这两个 C 代码真的相同吗?

boot - 如何使用 Photon 创建 QNX neutrino 7.0.0 可启动 CD 镜像?