sonyps4.ru

Usb инфракрасный приемник. Управление компьютером с дистанционного пульта


IgorPlugHID или самоопределяющийся ИК приемник для управления компьютером с пульта ДУ

Введение

Представляю USB инфракрасный (ИК) приемник IgorPlugHID . Данное устройство не требует драйверов (самоопределяется в ОС Windows), совместимо с USB 2.0 и обеспечивает управление компьютером посредством пульта дистанционного управления (ДУ). Оно поддерживает огромный список пультов (от телевизоров до иной различной техники) работающим по наиболее известным протоколам (RC5, NEC, Panasonic и пр.). Для работы с ним необходим плагин IgorPlugHid и программа (Girder, Перехватъ, SlyControl, IRlink и пр.).

В интернете полно сайтов со схемами данного устройства. Но схем очень много и найти нормальное, четкое и полное описание крайне сложно. Я же представляю упрощенную и, на мой взгляд, более надежную схему.

Назначение элементов

Сердцем является микроконтроллер (МК) Atmel - Atmega8A (ни в коем случае не Atmega8L). ИК приемник TSOP1736 принимает сигналы и передает на Atmega8, который обрабатывает и отсылает по USB. Резисторы R3, R4 и конденсатор С5 нужны в качестве обвязки TSOP для его стабильной работы. R2 подтягивает ногу Reset Atmega8A для стабильной работы (если не подтянуть, контроллер может периодически перегружаться). Внешний кварц нужен для задания частоты, на которой будет работать Atmega8A. 2 конденсатора С1 и С2 по 22пФ для стабильной работы кварца (если не поставить, кварц может вообще не запуститься). Резистор R11 нужен для того, чтобы «сообщить» компьютеру тип устройства USB (низкоскоростное). R8 и R9 в 68 Ом нужны для защиты шины данных USB от короткого замыкания и высоких токов (можно поставить и R=100 Ом). Электролит С3=10мкФ и керамический конденсатор С4=0.1 мкФ нужны для стабилизации питания всей схемы. 2 выпрямительных диода 1N4007 осуществляют падение напряжение до 3.8 В, которым питается МК. Это необходимо для согласования логических уровней USB 2.0 - на шине данных логическая 1 будет около 3.6В.

Бывают случаи, когда компьютер выключен и при случайном приеме данных устройство подвисает - т.к. ожидает, когда USB обработает данные (приходилось раньше доставать устройство и обратно вставлять). Для этого в схему введен транзистор, который открывается при наличии питания +5В на молекс разъеме (разъем ищите на блоке питания персонального компьютера). Есть второй вариант решения - в BIOS выключить опцию “Питание USB при выключенном компьютере “- это отлично подходит для ноутбуков. У меня же устройство отлично работает при наличии постоянного питания на USB и без «проводов от молекса», но я иногда наблюдаю этот глюк из-за софта на компе… тогда я просто перегружаю саму программу и все работает.

Если у вас USB выключается при выключении компа или вообще не наблюдается «зависания», то провод от молекса +5В и транзистор с резистором можно просто выкинуть из схемы, оставив ногу D3 Atmega8A висящей в воздухе.

Назначение светодиодов:

С0 - Во встроенной таблице найдено совпадение

С1 - Кодировка опознана

С2 - Прием посылки

Я считаю светодиоды излишеством, т.к. в диагностике они мне никогда не помогали. Поэтому я их выкинул вообще. :)

Перечень элементов

Atmega8A (в SOIC или в DIP корпусе, но ни в коем случае не Atmega8L)

Кварцевый резонатор на 12 МГц (именно на 12!!! и никакой другой)

USB коннектор типа «папа»

5R=68 Ом (или 3, если без светодиодов)

3R=1.5 кОм (или 1, если не использовать внешний буфер с молекс разъемом)

- *электролитический конденсатор С=4.7 мкФ 16В (вольтаж любой выше 5В)

-* электролитический конденсатор С=10 мкФ или выше (до 220 мкФ) 16В (вольтаж любой выше 5В)

2 керамических конденсатора С= 22пФ (можно 27 пФ)

1 керамический конденсатор С= 0.1мкФ

2 выпрямительных диода 1N4007 с падением напряжения по 0.6В каждый (можно любой другой тип - важно общее падение напряжения около 1.2В)

3 светодиода (я их вообще не использовал)

Предохранитель на 0.25А (к примеру стеклянный)

Любой биполярный транзистор npn типа (к примеру…..BC547-корпус TO92, BC847 - корпус SOT23 -smd вариант)

* можно поставить 2 электролита по 10мкФ >5В (на TSOP больше 10 мкФ не советую)

Прошивка

Кроме того, как собрать устройство, нужно запрограммировать МК Atmega8A. Есть большое количество программаторов способных на это (AVR910, STK200, STK500, AVRisp и пр.) и программ (ChipBlaster,PonyProg CodeVisioAVR, AVRstudio и пр.). Советую либо попросить запрограммировать МК у знакомых, если нет под рукой необходимого или, если есть LPT порт, то в интернете найдете простую схему «5 проводков», которая отлично подходит для наших целей. Для программирования нужны определенные выводы МК (Reset, MISO, MOSI, SCK, Gnd - на схеме подписаны фиолетовым).

Во FLASH память заливаете файл с прошивкой Main.hex, в Eeprom - Main.eep.

Также важно правильно запрограммировать фьюз биты. Если программируете через ChipBlaster или CodeVisionAvr, то нужно поставить галочку только в BODEN=0 (и CKOPT=0, если к кварцу не паяли конденсаторов или кварц все равно плохо запускается) и нажать Program>Fuse (cо всех остальных пунктов галочки нужно снять!)

Запуск

В окне настроек IgorPlugHID можно сразу проверить работу устройства - во вкладке Совместимость можно увидеть код кнопки нажатой на пульте ДУ.

В некоторых программах есть проблема (Girder, SlyControl ) - не работает настройка звука в Windows7. Для устранения проблемы нужно в файле программы поставить "совместимость с Windows XP" .

Мне понравилась программа Перехватъ - она проста в настройках и имеет приятный интерфейс.

Диагностика, если что-то не работает

2 прошивки для проверки работоспобности

К настоящему времени разработано достаточно много самых разных решений для ДУ персональным компьютером. Все они имеют разную сложность и функциональность. Для радиолюбительских устройств можно условно провести разделение:

1. Приемный модуль не совмещен с декодирующей частью. Декодирование ИК посылок осуществляется на ПК специальной программой. Как правило, схема приемника предельно проста. Подключение может быть реализовано через COM или LPT порты.

2. Прием и декодирование сигнала происходит в устройстве аппаратно. На ПК отправляется уже распознанная посылка. Распознавание может быть выполнено в виде реального кода, либо некого условного кода, который хоть и не является реальным для данного пульта, но обеспечивает однозначную идентификацию нажатой кнопки.

Обеим способам присущи достоинства и недостатки. Например, недостатки для первого типа: такие порты как COM и LPT встречаются в компьютерах все реже и реже, а в ноутбуках уже практически перевелись. Декодирование на ПК требует реалтаймового доступа к портам, что не гарантируется, в результате чего не всегда верно принимается посылка. Достоинства: простота, отсутствие необходимости программировать железо, существование программ способных распознать большинство протоколов. К плюсам второго подхода следует отнести возможность использовать интерфейс USB, не обязателен реалтайм. Недостатки – более сложная аппаратная часть, необходимость ее программирования.

Вашему вниманию предлагается приемник-декодер, подключаемый по интерфейсу USB, позволяющий управлять приложениями на ПК по инфракрасному каналу. В устройстве происходит распознавание реальных кодов, таких протоколов как: NEC, SAMSUNG, JVC, RC5, SONY SIRC (15 bit). Этого достаточно для подавляющего большинства используемых пультов. В компьютер отправляется последовательность вида:

(toogle,device_low,device_high,command:system). Например, в случае посылки по протоколу NEC, где младшая часть адреса устройства 134, старшая –107, код команды -18: в ПК будет отправлена строка (0,134,107,18:NEC_CODE).

Значение toogle будет либо 0, либо 1 – чередование от нажатия к нажатию. При удержании кнопки значение данного параметра не будет меняться. В стандарте RC5 это штатная функция. В других форматах этого нет, поэтому приемник программно определяет удержание для протоколов, отличных от RC5.

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

Преимущества CDC:

Поскольку CDC это виртуальный COM порт, то принципы работы с ним простые и ничем не отличаются от работы с обычным COM портом. Не требуются специальные драйвера со стороны ПК (используются inf-файлы для разных ОС). Работает в XP, Vista, Win7. Можно увидеть посылки устройства обычным терминалом, в случае необходимости. Не загружает процессор – посылки отрабатываются только во время приема.

Недостатки CDC:

Как и с реальным портом, требуется постоянное соединение устройства. Отсоединенное устройство придется вручную присоединять в приложении на ПК (переоткрывать порт) – в некоторых случаях это может быть неудобно.

Преимущества HID:

Можно отсоединять и присоединять устройство “на горячую”, программа на ПК будет автоматически его отслеживать и по цвету значка в трее, возможно определять состояние подключения.

Недостатки HID:

Для работы приложения требуется специальный драйвер. Был использован драйвер libusb-win32-filter-bin-0.1.12.1, который работает пока только на WinXP 32 bit. Если у вас другая операционная система, то остается CDC. Программа периодически опрашивает устройство, поэтому мизерная загрузка процессора в простое все же есть.

Схема устройства:

Контроллер – Atmega8 16AI (без индекса V, это важно). Светодиод D1 применен для снижения напряжения питания контроллера (5В), чтобы улучшить согласование уровней напряжения от МК с интерфейсными линиями USB (3.3В). Его переход обладает также стабилизирующими свойствами. Я применил яркий смд светодиод, выпаянный из ленты. Падение напряжения на диоде должно быть около 1.5В. В тоже время ИК приемник IR1 питается от 5В, поэтому диод D2 (лучше взять германиевый или Шоттки – с малым падением напряжения на переходе) защищает вход контроллера от перенапряжения. Переключатель SW1 применяется для переключения в режим программирования устройства. Об этом ниже.

Монтаж выполнен преимущественно смд элементами, вариант конструкции:

Для того, чтобы в последующем было удобно перепрограммировать устройство, в первый раз следует прошить бутлоадер (см. архив проекта, папка tools) по интерфейсу ISP любым удобным программатором. Прошивка рабочей программой далее выполняется по USB. Для этого следует замкнуть переключателем SW1 пин PB1 микроконтроллера на землю и присоединить устройство к порту USB. После этого запустить программу Upload.exe (оболочка для BootloadHID.exe) из папки default (или папки в которой находится hex-файл) соответствующего проекта. Откроется окно:

В строчку Firmware необходимо внести имя файла прошивки (без расширения). После этого нажать CMD Flash и подтвердить выбор. В окне:

Нажать кнопку CONFIRM и начнется процесс загрузки прошивки в контроллер. Остается только извлечь устройство, отключить PB1 от земли выключателем SW1и подключить снова к USB порту. Если был выбран класс устройства HID, то запроса на установку драйверов не последует. В диспетчере устройств можно увидеть новое оборудование. Для CDC класса в запросе на установку драйвера, необходимо указать нужный inf файл из папки inf (см. проект), в зависимости от ОС. После этого в системе появится виртуальный COM порт, в который будут приходить распознанные посылки.

Приложение для ПК находится в папке IRServer_WinLircCompatible. Выходные данные этой программы идентичны данным известной программы WinLirc. Поскольку являются, де-факто, стандартом для управляемых посредством сокетов приложений. Это означает, что с помощью данной программы можно управлять всеми приложениями, которыми позволяет управлять WinLirc. Многие из мультимедийных программ имеют встроенные средства или плагины для работы – LightAlloy, Aimp, KMPlayer, WinAmp и др. Остальными приложениями или функциями ПК можно управлять с помощью программ, которые также являются клиентами WinLirc, но реализуют отсылку управляемым приложениям WM-сообщений или посылку горячих клавиш (Girder, Device Control, MKey и многие другие).

Рассмотрим настройку программы, которая, в отличие от других приложений, достаточно проста. Главное окно программы:

Номер COM порта выбирается в зависимости от того, какой номер был присвоен устройству CDC. TCP порт установлен по умолчанию стандартным для WinLirc. Его можно изменять. Соответствующими кнопками можно управлять портами и сервером. Чекбокс “Use HID…” предназначен для устройства класса HID. В этом случае параметр Time HID Rq задает время опроса устройства в миллисекундах. В группе Info будут видны пришедшие и отправленные посылки, последнюю из которых (либо введенную вручную) можно отправить кнопкой Send. Также видно количество присоединенных к серверу клиентов (не более 16). Строки отправляются клиентам в виде Hash Counter Command Name. Где Hash составлен, для уникальности из кодов адреса и команды данного пульта и его вид нельзя изменить. Counter – переменная отражающая порядковый номер посылки при удержании. После прихода следующей посылки счетчик сбрасывается. Остальные два параметра задают команду (не обязательно в числовой форме) и имя пульта.

Для того чтобы в клиенте было удобней задавать соответствие команд управляющим воздействиям, предусматривается задание командам и имени пульта информативных имен.

Для этого устанавливаем переключатель в положение Naming (Именование) и нажимаем любую кнопку на пульте. Если для этого пульта (его адреса) нет соответствующего файла настроек, то появится запрос на введение имени пульта:

Вводим имя (например, MSI) и жмем ОК. После вторичного нажатия на кнопку, программа определит, что имя данного пульта уже ассоциировано и предложит поименовать команду:

Вводим имя команды и жмем ОК (или Enter). Таким образом, можно ассоциировать все нужные кнопки пульта. Настройки сохраняются в папку с исполняемым файлом сервера. Имя файла состоит из частей адреса устройства, расширение irs. При необходимости файл ассоциаций можно редактировать блокнотом. В итоге, получается следующее:

В данном случае видно, как отличается принятая и отправленная строки, а также реакцию управляемого клиента (Mkey), настроенного на команду right от пульта MSI (регулировка громкости).

Остальные настройки:

Use only named: Передаваться клиентам будут только именованные команды от именованного пульта. Сделано для исключения реакции на посторонние пульты или ненастроенные/ненужные команды.

Unnamed enable: помимо именованных команд будут переданы и неименованные (если таковые примет приемник).

Naming disable: будут передаваться посылки напрямую, без именования.

Как правило, наиболее комфортна работа с включенной опцией Use only named после задания соответствия имен.

Кнопка ОК сворачивает приложение в трей, Cancel – закрывает приложение.

Общие замечания:

По умолчанию COM порт настроен на скорость 9600 бод. Изменить, в случае необходимости, можно в ветке реестра:

HKEY_CURRENT_USERSoftwareIRServerCOM_PORT параметр Baud_Rate.

В ветке HKEY_CURRENT_USERSoftwareIRServerOther можно изменить VID/PID для устройства (класс HID) с которым работает сервер. Данные идентификаторы предоставляются разработчиком драйвера V-USB (AVR-USB) OBJECTIVE DEVELOPMENT Software GmbH бесплатно для некоммерческих устройств. Подробнее читайте в лицензионном соглашении.

При использовании класса HID, необходимо установить библиотеку libusb-win32-filter-bin-0.1.12.1 из папки tools.

Фьюзы МК следует настроить для работы от внешнего кварцевого резонатора 12 МГц, с включенным BOD на 2.7В (иначе возможно периодическое повреждение бутлоадера), с включенным загрузчиком размером 1024 байта (конфигурация фьюзов приведена в архиве)

Переключатель SW1 на линии PB0 может быть использован для дополнительной конфигурации устройства (при соответствующем изменении программы). Либо на вывод PB0 можно подключить светодиод, индицирующий прием посылку. Для этого в файле nec_ir_module.h нужно раскомментировать строку #define LED_USE и пересобрать проект. После этого, разумеется, не следует устанавливать на пин PB0 переключатель, с риском повреждения МК. Переключатель на PB1 при этом следует сохранить.

Приемник ИК излучения TSOP1736 использован в малогабаритном исполнении. Обратите внимание, что цоколевка у него отличается от обычного.

В архиве проекта присутствуют все необходимые файлы и исходные коды: скачать

Проект предоставляется “как есть”. Все работы по подключению данного устройства к ПК проводятся на ваш риск. Автор ответственности не несет.

Что не говори, а человек существо ленивое. Иногда так не хочется вставать с кровати чтобы отрегулировать громкость во время просмотра фильма или еще чего. Сейчас конечно есть куча всяких девайсов вроде мышек и клавиатур соединенных с компом по радиоканалу, но меня дико душит жаба при виде негуманных цен. Да и зачем покупать все это если в доме есть не нужный ик пульт и в загашнике завалялся tiny2313. Итак, будем ваять usb ик приёмник.

Было решено не изобретать свой велосипед, а повторить довольно удачную разработку некого Игоря Чешко. Повторить решил главным образом из-за того, что этот приемник поддерживается несколькими удобными программами вроде IrLink. Схема в оригинальном варианте мне очень не понравилась и я ее немного допилил. Доработка заключается в добавлении стабилитронов в цепи D+ и D-. Это сделано для того чтоб не спалить USB порт. Логическая единица у usb порта около 3.6 вольт и превышение этого напряжения крайне не желательно.

Сигнал с пульта принимается ик приёмником демодулятором TSOP17xx или TSOP21хх. ХХ — это несущая частота пульта в килогерцах. Как правило это 36 или 38 кГц. У меня например дома пять пультов и все пять работают на частоте 36 кГц. У ик приёмника очень хорошая чувствительность. Уверенно принимается даже сигнал отраженный от стен комнаты. Хотя тут еще многое зависит от пульта. Например с моим самодельным результаты чуть похуже (стоит крошечный 3мм светодиод). Сам приёмник после сборки в настройке не нуждается, а вот с софтом придётся немного повозиться. Из всех программ для работы с этим приёмником, самая прикольная на мой взгляд — IrLink. Прога умеет распознавать всевозможные кодировки, а следовательно можно заюзать почти любой пульт! Разумеется IrLink не знает всевозможных кодов кнопок, поэтому программу нужно обучать. Для начала работы с программой нам нужно установить драйвера на ик приёмник. Их можно скачать с сайта автора или у меня. Драйвер есть двух версий — платная и бесплатная. У бесплатной версии есть один маленький неприятный момент. Когда какая либо программа начинает работать с ик приёмником — выпрыгивает окно с кнопкой ок в котором написано что мы используем бесплатную версию. Это почти не мешает, однако если кого-то это сильно будет раздражать, то можно купить полную версию за семь баксов у автора. Кроме этого окна ни каких различий в функциональности нет. Драйвер успешно заработал как на WinXP так и на Windows 7. После установки драйверов нужно скачать самую новую версию программы с сайта www.irlink.ru . При первом запуске появится окно настроек в котором нужно указать что у нас используется самодельный приёмник IgorPlugUSB. Если всё работает как надо то на вкладке «Ик приёмник» должно быть написано что «приёмник сигналов обнаружен и запущен». Теперь можно обучать программу. Начинается обучение с создания нового пульта. Для этого переходим на вкладку «Пульт ДУ» и на пульте слева расставляем кнопки точно так же как они расположены на вашем пульте. Когда кнопки расставлены тыкаем по очереди на каждую и нажимаем на пульте соответствующие кнопки. После завершения обучения можно легко проверить результат, жмем кнопки пульта и видим как они подсвечиваются в окне программы. Присвоить кнопкам действия дело не хитрое, но на всякий случай покажу как настроить две кнопки на управление громкостью в проигрывателе Winamp.

1) Выбрать кнопку пульта
2) Выбрать программу и действие
3) Добавить действие

Вот и всё. Кстати, программа начнет откликаться на команды с пульта только после закрытия главного окна. Напоследок хочу сказать, что большие полигоны на плате очень хорошо лудятся с использованием флюса СКФ:

Если есть СОМ-порт (RS-232), то простейшая схемка «пятидеталька» отлично подойдет для нашей цели: управление ПК с дистанционного пульта. Собирается схема, в буквальном смысле, из пяти деталей. Не нужно никакого микроконтроллера, ни программирования.

Конечно, Bluetooth-мышки и клавиатуры хорошо, но не у всех они есть. А пульт от телевизора или видеомагнитофона, музыкального центра, кондиционера уж точно есть у каждого.

Устройство для приема инфракрасных сигналов собирается из пяти деталей:

  1. Компенсационный стабилизатор напряжения на 5 В, 100 мА: типа 78L05 или отечественный аналог КРЕН5.
  2. Инфракрасный приемник, на несущую частоту в 38 кГц: TK-19 или его аналоги SFH506-38, TSOP1138, TSOP2238, TSOP4838. Проверяйте распиновку выбранного ИК приемника .
  3. Диод выпрямительный на 150 мА: 1N4148, КД522, КД521 или другой, небольшого размера.
  4. Резистор 0,125 Вт, сопротивлением 4.7 кОм.
  5. Конденсатор емкостью 4.7 мкФ, на напряжение 6, 10, 16, 25, 50 В.

Дополнительно может быть понадобиться приобрести:

  • Штекер COM-разъема на 9 или 25 контактов.
  • Трехжильный кабель.
  • Конденсатор емкостью 100 пФ, на напряжение 6, 10, 16, 25 В.

При правильной сборке схема компьютерного ИК-приемника в наладке не нуждается.

Диод нужен для предотвращения попадания отрицательного напряжения на вход стабилизатора.

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

Распиновка COM-поров на 9 и 25 контактов для подключения трехжильного кабеля в таблице.

Все детали напаиваются на контакты купленного COM-разъема навесным монтажом. Все вместе они идеально помещаются внутри корпуса COM-штекера.

Без использования печатной платы собранная конструкция получается очень аккуратной и компактной.

Чтобы все было красиво и не было висячих проводов снаружи, собранную на COМ-разъеме конструкцию можно разместить внутри системного блока. Снимаем пластмассовую заглушку с неиспользуемого отсека для CD-ROM или Floppy-диска, и сверлим в ней отверстие диаметром 8 мм для инфракрасного приемника. Сам ИК-фотодатчик закрепляем с внутренней стороны заглушки с помощью термоклея.

Когда компьютер выключен, втыкаем вилку с собранной конструкцией в соответствующее COМ-гнездо.

Теперь остается только обзавестись подходящим программным обеспечением для обработки сигналов с пульта. Наиболее удачным софтом для управления компьютером с ПДУ является: драйвер WinLIRC, клиентская консоль Girder или IREX.

Можно и установить из него программы:

Полная инструкции по настройке Girder и WinLIRC для работы с ИК-пультом находится в архиве, а также доступна на сайтах разработчиков. Стоит упомянуть, что в этих программах можно задать практически любое действие с компьютером: нажатие клавиш, движения мышки. Но более востребованными функциями остаются: пауза, воспроизведение, стоп, перемотка, управление звуком, потому что именно они создают комфорт при просмотре фильмов, прослушивании музыки.

Правильный выбор пульта для компьютера

К используемому ИК-датчику подойдет не каждый пульт. Был выбран ИК-приемник, функционирующий на самой распространенной для пультов управления частоте в 38 кГц. Но есть ПДУ использующие частоты 36 или 40 кГц.

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

Ну, а для тех у кого на ПК нет COМ-порта, придется собрать более сложное устройство управления компьютером с дистанционного пульта по USB . Тогда уже понадобится микроконтроллер и прошивка для него.

Устройство резистивного сенсорного экрана

Р/л технология

Приемник команд ИК ПДУ с интерфейсом USB

Радиолюбители, повторившие конструкцию А. Зотова , убедились, насколько удобно, не подходя к компьютеру, выполнять на нем простейшие, но порой очень необходимые операции. Взаимодействие приемника команд с компьютером происходило через СОМ-порт, что накладывало некоторые ограничения на другие устройства, подключаемые к тому же порту. Ведь в современных компьютерах производители оставляют всего один разъем СОМ-порта, а в будущем, вероятнее всего, его уберут совсем. На смену пришел более универсальный и быстрый интерфейс USB. Найти свободный разъем USB несложно, на современном компьютере их достаточно много. Кроме того, устройства, снабженные этим интерфейсом, могут работать, не создавая взаимных помех.

На рис. 1 изображена схема приемника команд ИК ПДУ, взаимодействующего с компьютером по USB. Его основной элемент - микроконтроллер AT90S2313 (DD1) - выполняет преобразование принятых от модуля ИК приемника В1 команд к виду, пригодному для передачи по интерфейсу USB в компьютер. К выходу модуля В1 подключен и светодиод HL1, который мигает во время приема команды. Резистор R3 необходим для того, чтобы при соединении вилки Х1 с розеткой USB компьютера последний автоматически опознал подключенное устройство.

Чертеж печатной платы приемника и расположение на ней деталей изображены на рис. 2. Для микроконтроллера DD1 на плате установлена 20-контактная панель, все остальные детали впаяны непосредственно в плату. ИК приемник TSOP1736 можно заменить также широко распространенным SFH506-36. Тип остальных деталей значения не имеет.

Для загрузки в микроконтроллер программы я воспользовался простейшим программатором, собранным по схеме, показанной на рис. 3. Конструктивно он состоит из вилки DB25M (Х1), подключаемой к розетке порта LPT компьютера, и панели для программируемого микроконтроллера. Резисторы R1-R3 и перемычки припаяны непосредственно к соответствующим контактам вилки и панели. Программатором управляет программа IC-Prog, работа с которой подробно описана в . В списке программаторов, обслуживаемых этой программой, необходимо выбрать Fun-Card Programmer.
Порядок использования изготовленного приемника совместно с программой Girder для управления компьютером аналогичен описанному в , за исключением того, что вместо плагина для СОМ-порта Igor SFH-56 device следует использовать его обновленную версию IgorPlug-USB с поддержкой USB устройств. Для этого, выполняя п. 7 предложенной А. Зотовым процедуры настройки, следует "щелкнуть" по строке "IgorPlug-UDP/IP and IgorPlug-USB and IgorPlug-COM for WinXP" списка плагинов, нажать на экранную кнопку "Настройки" и выбрать порт USB.
В заключение стоит сказать, что такое устройство можно использовать для ввода в компьютер не только команд, но и другой цифровой информации. Если, например, вместо модуля ИК приемника установить датчик температуры (например, DS18B20) и соответствующим образом изменить программу микроконтроллера, то можно вводить по интерфейсу USB в компьютер показания этого датчика.

Программа микроконтоллера и необходимый для работы:устройства плагин можно скачать

Литература:

1. Зотов А. Управляем программами с помощью ПДУ. - Радио, 2004, № 8, с. 22, 23.
2. ATtiny2313 Product Card. - http:// atmel.com/dyn/products/product_card. asp?part_id=3229.
3. Долгий А. Модули приемников ИК сигналов. - Радио, 2005, № 1, с. 47-50.
4. Долгий А. Программаторы и программирование микроконтроллеров. - Радио, 2004, № 1- 12;


Дата публикации: 30.11.2009

Мнения читателей
  • Kennedy / 16.06.2012 - 01:12
    I"m iprmseesd you should think of something like that
  • Максим / 06.04.2012 - 12:10
    Не нужно дополнять прграмму. Нужно перепрограмировать фьюз бит CKDIV = 1 или снять с него галочку если шить понипрогом. Ну и переключить на внешний кварц.
  • waley / 05.02.2011 - 07:04
    Нужно ли дополнять программу при применении ATtiny2313-10 и каковы будут Конфигурации?


Загрузка...