IR + USB HID = очередной пульт для компа (часть 4)


Краткое содержание предыдущих серий:
Захват и декодирование IR протокола
Теория USB HID
Код для STM32

В этой части я расскажу про программы-полезняшки. Куда уж без них.


Читать дальше

IR + USB HID = очередной пульт для компа (часть 2)


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


Читать дальше

Делаем свой лог. анализатор из того, что было.

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


Читать дальше

Yet another POV –Wheel POV

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

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


Читать дальше

CP2102 - преобразователь USB-UART за 45 рублей

Думаю, вряд ли кого-то стоит убеждать в необходимости и полезности USB-UART-преобразователей — COM- порт найти в современных компьютерах всё труднее. Для большей части практических задач, использующих обмен данными между компьютером и устройством — управления, отладки, передачи небольших объёмов данных — ничего проще и удобнее, чем преобразование USB-UART, придумать, пожалуй, невозможно.

Микроконтроллер общается с микросхемой по обычному UART, к компьютеру все это дело подключается по USB. Компьютер распознает подключенное устройство как COM-порт и работать с ним можно как с обычным ком-портом. Все очень удобно, не требует ни мощных микроконтроллеров с интерфейсом USB и специально подобранными кварцами, ни сложных программ.

Наиболее популярной микросхемой USB-UART является FT232RL от FTDI. Все в ней замечательно, кроме цены. А вот о CP2102 от SiLabs пишут значительно меньше. Стоит она значительно дешевле, чем FT232RL. Например ТУТ я ее купил за 45 руб.

Распиновка

Корпус у неё, конечно, страшноват, но к этому мы ещё вернёмся. :)

Корпус CP2102



Читать дальше

Небольшой пример с LUFA + HIDAPI.

AVR
1. Введение
LUFA – библиотека с открытым исходным кодом (лицензия MIT), позволяющая легко реализовать USB-устройства на основе микроконтроллеров AVR с аппаратным USB. LUFA разработана для использования только с компилятором avr-gcc (Хотя уже портировали на LPC — раз и два)

2. Firmware
Рассмотрим, как реализовать с помощью данной библиотеки устройство многострадального HID-класса. Для примера я использую LED-матрицу 16х16 на четырёх 74HC595, подключённую по SPI к платке с МК AT90USB162.

Читать дальше
  • +3
  • 05 февраля 2012, 21:53
  • QBasic
  • 1

Управление W5100 и AT25160A по одной шине SPI. Непредвиденные грабли.

Всем привет.
Продолжаю ковырять потихоньку свой проект основанный на STM32F103 и W5100, и понадобилось мне прикрутить к нему последовательную EEPROMку чтоб настройки хранить.
Самые ходовые варианты — это серия AT24 и AT25.
Так как AT24 — серия основанная на I2C, мне она не особо катит, потому как выискивать и мультиплексировать ноги под интерфейс не лучшее решение. Другое дело серия AT25. Работает по SPI, который у меня уже используется, то есть делов-то вроде — еще одну ногу CS выделить, и будет счастье. Но не тут-то было…


Читать дальше

Интерфейс USB. Завершение реализации.


Итак, нам осталось разобраться с процессом обработки стандартных запросов USB и с дескрипторами. Давайте сначала разберемся с теорией, а потом подробно разберем пример обработки конкретного запроса.



Читать дальше
  • +8
  • 15 ноября 2011, 17:35
  • e_mc2
  • 1

Интерфейс USB. Реализация, часть 2.



Для того чтобы продолжить реализацию устройства, нам придется немного вернуться на физический уровень и уровень передачи данных. Задача периферии МК — абстрагировать нас от этих уровней интерфейса, но кое-какие моменты нам придется обрабатывать самостоятельно.



Читать дальше
  • +6
  • 11 ноября 2011, 12:48
  • e_mc2

Интерфейс USB. Реализация, часть 1.


Продолжим цикл статей, посвященных интерфейсу USB. Как и договаривались, мы приступим к «практической» части – начнем писать код. В данной статье мы создадим программную прослойку, которая абстрагирует нас от «железа» (USB периферии конкретного МК). Это позволит нам в дальнейшем перейти к написанию высокого уровня «стека» USB (уровня обмена данными с хостом, обработки стандартных запросов USB и т. д.).


Читать дальше
  • +4
  • 07 ноября 2011, 17:41
  • e_mc2