Чтение / запись файлов с карты памяти USB в ОС uC-OS/II
У меня есть плата с процессором ARM и микросхемой RTOS. Мне нужно для чтения / записи файлов с карты памяти USB. Например, стандартная функция, которая переименовывает файл следующая -
int FS_Rename (const char * sExistingName,
const char * sNewName);
какой путь мне нужно записать в файл sExistingName для указания файла на карте памяти USB?
1 ответ
Не так просто иметь "правильный путь"; Сама RTOS не включает ни файловую систему, ни поддержку USB. Если вы используете файловую систему Micrium, вам все равно потребуется поддержка запоминающего устройства USB для доступа к такому устройству.
Это помогло бы, если бы вы показали, какое устройство ARM вы используете (или даже какую плату, если это COTS); само ядро ARM не определяет какой-либо конкретный периферийный набор; это решает производитель микросхем, использующий ядро ARM по лицензии.
Если USB-контроллер встроен в микросхему, поставщик микроконтроллера может бесплатно получить пример кода устройства хранения данных. Однако USB-хост или OTG-стеки (в отличие от стеков устройств), которые вам нужны, более сложны и редко бывают бесплатными и зачастую дорогостоящими.
Более того, для вашего микро потребуется контроллер хоста или OTG, а не более простой и распространенный контроллер устройства. С контроллером устройства вашей целью может быть устройство хранения данных, но оно не может получить к нему доступ.
[редактировать]
Micrium предоставляет хост-стек USB, совместимый с их файловой системой. Если вы используете их файловую систему, это будет путь наименьшего сопротивления, но вам все равно понадобится аппаратный контроллер хоста на вашей цели.