Arduino очень популярны, и он является открытым исходным кодом аппаратных средств, поэтому существует варианты , в том числе третьей стороны Freeduinos под названием Bare Bones совет , в Really Bare Bones совет , и Boarduino , которые очень хороши для использования с макетами. Стандартный Arduino адаптирован с использованием вещей, называемых щитами. Вы можете сделать свой собственный щит или купить что-то вроде этого ProtoShield Kit.
Arduino использует чип или кабель FTDI USB-RS232. [В стандартную версию Arduino он встроен, в то время как на большинстве макетов используется специальный кабель с микросхемой внутри, что позволяет сэкономить немного денег.] Существует встроенный драйвер для Linux, Mac OS X и Windows. пользователи могут скачать драйвер. По сути, это означает, что Arduino действует как устройство, взаимодействующее через последовательный порт, и поэтому с ним очень легко общаться.
Чтобы использовать его, вы также загружаете программное обеспечение. Он поставляется с IDE, набором инструментов AVR-GCC, действительно хорошей библиотекой и программным обеспечением для загрузки вашей программы в чип. Он скрывает большинство деталей от вас и имеет большое сообщество. Он запрограммирован на языке «Wiring», но на самом деле это C ++.
Наконец, будучи аппаратным обеспечением с открытым исходным кодом, существуют схемы. Действительно, мне кажется, что я вспомнил, что было довольно легко построить более раннюю модель. Поиск "Arduino schematics" в вашей любимой поисковой системе даст вам хорошие результаты.
Что касается комплектов, Maker Shed предлагает много предметов, связанных с Arduino . Похоже, они отправляются по всему миру. Некоторые из них представляют интерес:
У Shoppe в Вульфдене (США) есть хорошие наборы для экспериментаторов, и, похоже, он поставляется по всему миру.
Solarbotics (Канада) имеет набор для экспериментатора ARDX Arduino, набор для начинающих Freeduino - Ultimate и набор для начинающих Arduino - Basic (и Ultimate ) и, по-видимому, поставляется по всему миру.
На главной странице покупки Arduino перечислены поставщики Arduino во всех регионах мира.
Другие места, которые я бы проверил, включают Adafruit Industries и Sparkfun Electronics (оба в США).
Arduino - отличный инструмент для начала, когда вы хотите создавать электронные гаджеты, и он может привести вас к вашей конечной цели создания регистратора данных . Однако он не подходит для реальной разработки USB, поскольку он эмулирует старомодный последовательный порт. Это не позволит вам превратить его во что-либо еще (например, в устройство Human Interface Device (мышь / клавиатура) или устройство хранения данных (устройство чтения карт памяти / съемный диск)).
Если вы хотите сделать «настоящие» USB-гаджеты, загляните на сайт Яна Аксельсона . Он пишет "начинающим" книги о USB. Разработка гаджетов, использующих USB на этом уровне, может не подойти новичкам, поэтому опыт Arduino определенно поможет вам в этом.
источник
Я очень рекомендую учебник для слайдшоу Tuxgraphics AVR USB. В нем используется микроконтроллер Atmel AVR, в котором есть большое сообщество любителей (avrfreaks и т. Д.), И открытый только для программного обеспечения стек usb1.1 с сайта obdev.org. Он не может масштабироваться очень высоко (например, запоминающее устройство), но конечным продуктом является небольшая USB HID клавиатура с двумя назначаемыми кнопками. Было бы тривиально использовать его в качестве регистратора данных, и несколько примеров на obdev.org - именно это (www.obdev.at/products/vusb/projects.html). Он написан на чистом c, а список деталей составляет не более нескольких долларов.
В то же время я рекомендую собрать или купить программатор tuxgraphics avrusb500. Это радость в использовании, и это одно из самых надежных устройств, которым я владею. (Я не аффилирован - просто очень довольный клиент!)
источник
Еще одно устройство, которое я хотел посмотреть, - это AT90USBKey . Прошло много времени с тех пор, как я посмотрел на него, и я не уверен, что вы можете программировать для него без Windows, но он будет действовать как USB-устройство (например, клавиатура или запоминающее устройство) или как USB-хост что вы подключаете другие устройства. Доступны примеры программ, и работать с ними довольно просто, при условии, что вы немного знакомы с электроникой и умеете программировать на C.
Поиск в Google для AT90USBKey и Linux дает многообещающие результаты.
Я знаю, что вы можете получить его с DigiKey.ca . Я искал эквивалент Digikey для Азии ; Вы можете получить часть от Фарнелла .
источник
Вы также можете проверить Teensy .
источник
Если вы в конечном итоге используете Arduino, я перенес библиотеку V-USB (ранее AVR-USB) для запуска на нем. Он также обернут классом для облегчения взаимодействия.
С его помощью вы можете создавать устройства USB HID, например, клавиатуру, мышь или джойстик. Вы также можете создать универсальное устройство, которое использует libusb на хосте для управления им - из Python, C, Processing и т. Д.
Мой сайт имеет экран для печатной платы, который вы можете сделать, используя USB-разъем и несколько резисторов и т. Д.
http://code.rancidbacon.com/ProjectLogArduinoUSB
Вы можете написать код Arduino для отправки нажатий клавиш так же легко, как:
или с помощью «драйвера» libusb вы можете отправлять такие данные:
или читать данные с помощью:
--Philip;
источник
В настоящее время существует ряд плат для разработчиков на базе AVR-USB.
Я лично использовал ранее упомянутые Teensy и Bumble-B и думаю, что они оба великолепны.
Teensy хорош, потому что он действительно хорошо интегрируется в среду Arduino. Это означает, что вы можете делать что-то вроде «Mouse.init; Mouse.move (x, y)» вместо того, чтобы самостоятельно обрабатывать низкоуровневый USB-код. Оба будут запускать LUFA, если вы этого хотите.
источник
Вот мой простой проект PIC USB:
http://www.leonheller.com/usb
Печатные платы доступны.
источник
Object Development создала библиотеку для микроконтроллеров AVR, которая позволяет вам делать очень дешевые USB-устройства самостоятельно (всего за 2-3 $). GCC для AVR является дружественным для Linux. Есть сотня устройств, уже сделанных. Посмотрите здесь: http://www.obdev.at/products/vusb/projects.html
источник
Это зависит от того, какие USB-гаджеты вы хотите сделать, и от того, насколько продвинутый уровень. Вы упоминаете мигающие светодиоды. Такого рода управление может быть легко архивировано с помощью любого микроконтроллера с UART и чипом ftdi (Arduino довольно популярен, и его легко запустить). Чип ftdi подключается к uC последовательно и действует как последовательный <-> USB-конвертер. Он также отображается как виртуальный COM-порт на вашем компьютере.
Если вы хотите использовать более продвинутые USB-протоколы, драйверы и функции, вы можете получить универсальный пользовательский интерфейс с собственными USB-возможностями. Микрочип имеет много фото (их микроконтроллеров), которые могут сделать это, например. Microchip также имеет много плат для разработки, посвященных обучению использованию USB. 32-разрядные UC Atleast Microchips также поддерживают режимы хоста и otg, так что вы можете создать регистратор данных, который сохраняет данные на обычной карте памяти USB, которую можно подключить к компьютеру для чтения данных. (Я уверен, что многие другие производители также имеют аналогичные микросхемы и наборы разработчика, но я использовал только микрочип)
Домашняя страница Microchip / USB
источник
Обратите внимание, что вам не нужно начинать с такого низкого электронного уровня и тратить больше времени на разработку самого «гизмо». Многие компании продают USB-устройства для рынка DIY, например:
http://www.yoctopuce.com
http://www.phidgets.com
источник