Привет всем!
Хочу сделать такую штуку, чтобы можно было втыкать usb-флешку в устройство, и оно распознавало файловую систему, проходилось рекурсивно по папкам и считывало расширение и заголовки файлов в каждой папке. Затем, после сверки расширений и заголовков файлов по заранее предустановленному "белому листу", передавало эти файлы на ПК.
Если кто знаком с PHP, то получается, что принцип почти тот же самый как при передаче и проверке фалов на сервере, только в железе. Сам пишу на пыхе, так что выражаюсь как могу
Но с С++ у меня очень мало опыта
Я так понимаю, что задача вполне реализуемая и к тому же интересная, но нужна ваша помощь
Думаю рассмотреть 2 варианта: arduino или что-нибудь на arm (pi - слишком дорого для такой задачи, мне кажется).
1) Arduino
Вероятнее всего, мне нужен модуль
arduino usb host shield либо что-то самопальное на MAX3421 или аналог.
Если кто может подсказать какие-нибудь примеры кода для работы с файлами с этим модулем, то буду очень вам благодарен!
Что касается передачи файлов на ПК, то тут тоже вопрос. Вообще, планируется пропускать файлы не более 10мб, а то смысла от этой штуки будет не очень много, не смотря на то, что передача по serial может быть около 2Mbps, по крайней мере, как это пишут тут
http://forum.arduino.cc/index.php?topic=21497.0Я думаю, что можно написать специальную прогу, которая будет как раз ловить данные по последовательному порту, затем пихать их в специальную папку или обрабатывать на ходу.
2) ARM
Я так полагаю, что тут можно обойтись без специального шилда и использовать какой-нибудь developer board сразу как usb-host?
Скорее всего, тут и со скоростью передачи файлов будет намного лучше. Но единственное для меня это будет очень сложно, так как именно с arm дело не имел, только экспериментировал с ардуино (метеостанция и все такое). Может это говорит о том, что уже пора уже начать экспериментировать с arm)))
Надеюсь есть какие-нибудь готовые библиотеки для работы с файловой системой, а то будет печально(
Какой девелопер борд посоветуете в этом случае?
Еще интересует, можно ли сделать эмуляцию флешки/файловой системы, чтобы ПК распознавал подключенный МК через usb как флешку? Т.е. использовать как usb-host и usb-device одновременно. Таким образом можно было организовать "прием" файлов без всякого специального софта, если правильно все понимаю.
Прошу не пинать за мою терминологию и надеюсь услышать позитивные мысли и советы