Jump to content

    

Слёзкин

Участник
  • Content Count

    18
  • Joined

  • Last visited

Everything posted by Слёзкин


  1. ARM Linux как USB Device

    Доброе утро. Извините, если похожая тема (как я подозреваю, но не нашел) уже существует. Ткните... На горизонте появилась задача по использованию устройства на основе ARM Cortex-A9 (TI) с ОС Linux в качестве USB-устройства, которое будет подключено к хосту x86. Устройства должны быть класса MSC (Mass Storage), как минимум и UVC (USB-Video), как оптимум. На данный момент хочется на уровне концепции понять работу с Linux в роли USB устройства указанных классов, а не хоста. Как идет функционирование - это спец. драйвер от производителя процессора ARM + API или это организуется как-нибудь иначе? Я нашел это Linux USB Gadget; есть сомнения насколько это актуально, а так же Цитата("Оттуда")video class driver (very experimental). Чем пользуются для таких целей сегодня? Ведь такая задача наверное встречается сплошь и рядом! Спасибо. p.s. Я похоже спутал раздел, мне наверное в Linux-форум надо было? Прошу перенести туда, в этом случае.
  2. ARM Linux как USB Device

    Каламбур, что я сам все больше отвечаю на свой размытый вопрос, но тем не менее: TI wiki (про MSC gadget driver) объясняет концепцию работы Mass Storage. Мне кажется, тоже и для UVC справедливо. Если я верно понимаю, для MSC нужен 1) драйвер производителя (переферии), работающий с API модуля USB стека (стандартным); 2) Модуль g_mass_storage (стандартный) с аргументом, например, пути к каталогу, который будет предоставлен как root для "usb-накопителя" Подробнее. Для UVC конкретно, видимо несколько сложнее. В идеале, хочется, чтобы этакий драйвер предоставлял пользовательскому пространству видеовыход, вроде как монитор, но так ли ведет себя UVC Gadget, пока не еще понял. Немного об UVC. Ну, видимо, несложно найти интересующую меня информацию в интернете. Все что я нашел - для меня на сегодня достаточное приближение. Тему можно закрыть или удалить, если она здесь кажется бесполезной. Если нет, буду рад дополнениям, поправкам...
  3. ARM Linux как USB Device

    Кажется, поспешил с утра создать тему, т.к. сам нашел некоторую информацию в нашей, пока еще глобальной, сети. 1. http://processors.wiki.ti.com/index.php/Us...t_configuration 2. Таким образом, понятно, что в ядре эта возможность предусмотрена, остается посмотреть какие API у этих модулей, а также непонятно насчет того, нужна ли поддержка "железа" конкретного производителя...
  4. USB device на TE-AM1705

    --- (удалите, пожалуйста)
  5. OrCAD PCB 16.5 и фрезеровка

    Здравствуйте! Я недавно начал работать с этой системой... Нужно сделать в плате несколько фрезеровок, в том числе и под углом (пусть будет - произвольным). Рисование прямоугольников в слое Board Geometry / Outline не принесло ожидаемого эффекта, равно как и использование инструмента "вырезать форму" (Outline не поддается этой операции). Все что я нашел в документации - это формирование механических элементов с помощью Padstack Designer, однако в последнем можно сделать только квадратное или прямоугольное отверстие, которое при вставке нельзя повернуть точнее чем на 45 градусов... (по крайней мере, я не нашел, как это сделать...). Подскажите пожалуйста, как нужно создавать в плате прорези, чтобы они воспринимались САПР именно как прорези и импортировались в файл .drl? Если это возможно только через Padstack Designer, то можно ли (и как?) вращать элемент на произвольный угол? Большое спасибо!
  6. USB-COM и windows

    А что вы используете для создания виртуального COM-порта? Если это какая-нибудь многоногая микросхема (они, кажется, не так дешевы?) может быть перейти на контроллеры, поддерживающие USB?
  7. Wiegand @ SIA AC-01-1996.10

    А с шифрованием никто дела не имел? Затруднение в том, что если простые, не шифрующие карты можно считывать через однонаправленный Wiegand, то существует ли стандарт для считывателей, использующих шифр (который, как я понимаю, должен передаваться от моего приложения к считывателю)? Все что нашел в интернете рассчитано на ПК...
  8. Здравствуйте! Прошу помочь. Стоит задача - разработать устройство, совместное с большинством возможных Wiedand считывателей, например как те что можно увидеть тут: http://www.alibaba.com/trade/search?fsb=y&...=wiegand+reader Поиск источников не принес ожидаемых результатов, например: http://electronix.ru/forum/index.php?act=a...post&id=152 http://www.prox.ru/doc/wiegand-protocol.pdf http://www.idencom.com/oem/3020/Biokey_Wiegand.pdf По приведенным выше ссылкам ширина импульса варьируется от 50 до 200 мкс, а период следования от 1 до 2 мс. Нашелся стандарт, SIA AC-01-1996.10, скачать который за восемьдесят (для кого-то - сорок) долларов можно здесь: https://siamembers.siaonline.org/eweb/Dynam...E2-4BC7746267E0 Буду несказанно рад, если кто-то обладает достаточной информацией об этом протоколе или месте, где можно скачать SIA AC-01-1996.10 без затрат? Спасибо!
  9. Wiegand @ SIA AC-01-1996.10

    Спасибо! Больше оснований перейти к практике...
  10. Wiegand @ SIA AC-01-1996.10

    Цитата(vesago @ Nov 12 2012, 12:41) Какая разница 30 мкс, 50 мкс - принимайте по таймауту. А вот по какому?
  11. Wiegand @ SIA AC-01-1996.10

    Цитата(arttab @ Nov 12 2012, 05:18) немного возился. по тому документу что я находил, минимальная длительность импульса 20 мксек. но делал минимум на 30 мкс (mega8535 @8МГц). 3х и 4х байтные карты считывались, но у 4х байтный 2й паритет не совпадал. Вам определиться бы с какими картами нужно работать и запросить у производителей информацию. иначе на ощупь как ёжик в тумане. Спасибо! В первом приближении, мы хотели заявить, что устройство совместно с любыми Wiegand - считывателями... Но теперь, сомнения широким фронтом наступают... А какой у вас был период следования?
  12. OrCAD PCB 16.5 и фрезеровка

    Спасибо, Hoodwin, всё дейтвительно в этом. И всем кто отвечал тоже - спасибо!
  13. OrCAD PCB 16.5 и фрезеровка

    А еще вот маленький вопрос, слой Outline каким-то образом можно передать в гербер? При попытке в меню Manufacture -> Artwork... включить этот слой в какую-либо из групп, все проходит успешно, но когда я открываю этот файл в просмотрщике герберов, контур платы там отсутствует... Или, для того, чтобы контур платы попал в .art файл, нужно повторить его в каком-нибудь другом слое?
  14. OrCAD PCB 16.5 и фрезеровка

    Спасибо! Многое стало яснее.
  15. OrCAD PCB 16.5 и фрезеровка

    Цитата(bsvc963 @ Mar 28 2012, 10:38) Гм...рисовали OUTLINEом....при заказе указать, что в плате фрезеровка...ну и чертёж наверное не помешает (указать области фрезеровок). Кстати проверьте попали ли ваши прямоугольники в гербера. Нет, в гербер он тело платы (outline) вообще не желает импортировать. То есть файл создается, но (в отличие от прочих слоев) не импортируется обратно (для проверки, как указано в инструкции). В документе написано, что данные об отверстиях нужно экспортировать в файл .drl, который чем либо открыть вообще не представляется возможным... Конечно, на худой конец, сделаю какой-нибудь dxf, но хотелось бы понять можно ли средствами пакета создать все что нужно... p. s. Кстати, а как крутить элементы на произвольный угол? Такое возможно? Как крутить, нашел... (от руки вписать угол в открвающийся список).
  16. Здравствуйте! Обращаюсь с просьбой посодействовать по следующему вопросу. Существует файл статической библиотеки <filename.a> и header-файл <filename.h>, где объявлены типы и функции. Исходный код библиотеки разработчик предпочел скрыть и предоставил .a -файл, скомпилированый в IAR. Моя же задача - правильно сцепить данную библиотеку с моим проектом, компилируемым с помощью GCC. Однако, линковщик предупреждает о возможных ошибках в работе программы из-за несовместимости типов wchar_t. Мне удалось выяснить что в среде Windows этот символьный тип имеет размер в 2 байта, а в Linux - целых 4. Возникло два вопроса. 1) Нужно ли обращать внимание на этот warning? Ведь размер wchar_t в стандартных библиотеках компилятора GCC больше, чем в рассматриваемой. И в первом приближении кажется, что потери данных произойти не может (исключая случай с переполнением возвращаемых в код библиотеки переменных). 2) Если ответ на первый вопрос - нужно. В подпрограмме ReadELF можно просматривать имена функций библиотеки. А можно ли каким-нибудь образом узнать типы входных и выходных параметров этих функций? Ведь линковщик как-то понимает, что это ни что иное, как wchar_t! Большое спасибо!
  17. А может быть, кто-то имеет достаточный опыт, чтобы ответить на вопрос, или высказать соображения: возможно ли вообще использовать библиотеку, скомпилированную в IAR для проекта, компилируемого GCC? Или, быть может, по каким-то причинам, это заведомо невозможно?
  18. Цитата(Aaron @ Oct 27 2011, 13:12) дак если есть <filename.h>, там же имена и параметры передаваемые/возвращаемые указаны. насчёт 2/4 байта - результаты могут быть плачевные, если в функциях идёт дополнительное преобразование типов. В .h объявлены (увы) только пользовательские функции... Среди них ни одна не равна и не имеет в качестве аргумента wchar_t... Да. Если допустить, что четырехбайтный wchar_t это unsigned long int, а двухбайтный- unsigned int, то мой вопрос можно записать так: Кодunsigned long A; unsigned B; B=0x1234; A=B; // Чему будет равно A? 0x00001234 или 0x????1234 A=0x12345678; B=A; // Ну здесь наверное B=0x5678? Тоже ведь не факт p.s. Про такое, как флаг -fshort wchar и макрос __WCHAR_MAX__ я читал, но задействие сих может окончится печально при работе других стандартных библиотек...