Как использовать arduino в качестве интерфейса для передачи файлов между устройством и ПК?

Или, может быть, вы, ребята, можете указать мне другое направление...

Вы можете спросить, почему бы не подключить устройство непосредственно к ПК?

Ну, устройство предназначено для распознавания только USB-накопителей и сброса данных в них, поэтому я не могу просто подключить к нему свой компьютер и извлечь данные (насколько я знаю...), потому что ПК действует как USB-хост (я думаю).

Поэтому я подумал об использовании arduino и заставил его действовать как USB-накопитель, а затем передавать данные с arduino на ПК.

Возможно ли это? Или, может быть, мне нужен малиновый пи?

Любое предложение приветствуется. Заранее благодарю вас!

, 👍1

Обсуждение

используйте адаптер SD-USB и модуль считывания SD-карт arduino, и, конечно же, SD-карту., @dandavis

Пожалуйста, разместите ответы в разделе "Ответы". Я не знаю, будет ли ваш "ответ" это правильно, но я не могу проголосовать против, так как это не ответ., @Nick Gammon

Чтобы сделать то, что вы предлагаете, вам действительно понадобится микроконтроллер с двумя собственными интерфейсами USB. Я знаю только об одном таком семействе (серия PIC32MK), и для него еще не доступно ядро Arduino (так как у меня не было времени добавить поддержку в chipKIT)., @Majenko


1 ответ


2

У вас есть устройство, которое сохраняет информацию на USB-накопитель, верно? Что-то вроде сканера или какого-то регистратора температуры?

Эмулировать USB-накопитель было бы непростой задачей, потому что вам нужно было бы притвориться, что у вас есть файловая система, так как ваше устройство будет открывать файлы, записывать в них и закрывать их.

Это звучит как большая работа - возможно, было бы проще получить другое устройство, которое на самом деле подключается к чему-то вроде последовательного порта.

Сказав это, на первый взгляд это кажется разумной просьбой. Просто в качестве примера у меня есть сканер, который записывает данные на USB-накопитель. Было бы удобно, если бы он отправлял файлы непосредственно на мой компьютер без необходимости постоянно перемещать USB-накопитель.

См. раздел Использование компьютера в качестве виртуального USB-устройства для другого оборудования в качестве примера аналогичного вопроса, ответы на который предполагают, что это возможно, например, кабели USB-USB.

Даже если вы заставите его работать, он может быть утомительным в использовании. Например, если ваш гаджет добавляет к какому-либо файлу то, что он считает USB-накопителем, вам придется эмулировать эту файловую систему, а затем проверить на своем компьютере, стал ли файл больше, и, таким образом, получить на нем новые данные.

Плюс, возможно, затраты (и время), связанные с этой работой, могут быть больше, чем просто получение другого устройства, которое фактически регистрируется через какой-то порт, например последовательный или RS485.

,