Как настроить смартфоны и ПК. Информационный портал

Ардуино: инфракрасный пульт и приемник. Универсальный пульт на Arduino

Обычно пульты дистанционного управления телевизора, кабельной приставки, Blu-ray плеера и стерео системы не только занимают место, но и затрудняют работу по управлению всеми этими устройствами. Вы можете рассмотреть вариант покупки универсального пульта, но они обычно дорогие и иногда не обеспечивают требуемый уровень управления или интерфейс. В данном проекте создается устройство, которое может отправлять и принимать коды пульта управления со стандартной веб-страницы. Вы сможете запрограммировать требуемую функциональность с любого смартфона или компьютера!

В данном проекте используется модуль Arduino Yún, который специально разработан для управления устройствами с поддержкой сетевого соединения. Yún имеет два процессора, первый из которых запускает операционную систему Linux и может подключаться к проводной или беспроводной сети. Второй процессор выполняет те же функции, что и процессор в модуле Arduino Leonardo. Поэтому он обеспечивает хорошую совместимость с библиотеками Arduino и аппаратными средствами.

В данном проекте для отправки и приема сигналов пульта дистанционного управления используется инфракрасный светодиод и приемник. Инфракрасный свет невидим для человеческого глаза, но легко детектируется электронными датчиками. Для более надежной передачи сигнала устройства используют модулированный инфракрасный свет, поэтому исключается возможность принятия ложных сигналов. Инфракрасный приемник – это небольшое устройство, которое принимает инфракрасные сигналы, промодулированные на определенной частоте, обычно 38 кГц. С помощью данного приемника модуль Arduino определяет биты информации, которые отправлены с пульта управления.

Отправка команд для вашего мультимедийного центра будет осуществляться с помощью простого веб-интерфейса, который запускает локально на модуле Yún и доступен для большинства современных веб-браузеров. Веб-сайт облегчает работу по управлению инфракрасным устройством и позволяет обрабатывать даже несколько команд одновременно. Например, при нажатии кнопки ‘Watch Movie’ (Просмотр фильма) может отправляться сигнал для включения телевизора, Blu-ray плеера и его подключения к входу телевизора.

Для выполнения данного проекта нужен некоторый опыт по запуску скетчей Arduino и использованию инструментов с командной строкой. Электронные компоненты проекта можно установить на макетной плате.

Шаг #1: Подключение компонентов

  • Подключите инфракрасный светодиод к модулю Yún, проложив провод от анода светодиода (длинный вывод) к цифровому выводу 13 модуля Yún.
  • Используя резистор номиналом 100 Ом, подключите катод светодиода (более короткий вывод) к земляному выводу инфракрасного датчика (средний вывод датчика).
  • Подключите вывод распознавания detect инфракрасного датчика (самый левый вывод, если смотреть спереди датчика) к цифровому выводу 11 модуля Yún.
  • Подключите заземляющий вывод инфракрасного датчика (средний вывод) к заземляющему выводу модуля Yún.
  • В заключение, подключите питающий вывод датчика (крайне правый вывод, если смотреть спереди датчика) к выводу 5 вольт модуля Yún.

Шаг #2: Установка программных зависимостей

  • При вставленной MicroSD карте в модуль Yún, включите Yún, подключив USB Micro B кабель к модулю Yún и USB адаптеру питания.
  • Убедитесь в том, что Yún настроен и подключен к беспроводной сети. Настройка модуля Yún указана на данной странице .
  • Подключитесь к командной строке Yún, используя SSH. Данный процесс описан на данной странице .
  • После подключения к командной строке вы увидите версию микропрограммного кода. Данный проект протестирован с версией BusyBox v1.19.4 от 2014-04-10 и выше. Если вы используете более старую версию, тогда выполните следующие инструкции.
  • В командной строке выполните следующие команды для обновления диспетчера пакета:
opkg update
  • Далее установите PIP, диспетчер пакета Python:
opkg install distribute && opkg install python-openssl && opkg install python-expat && easy_install pip

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

  • Создайте директорий на SD карте для сохранения пакетов Python:
mkdir /mnt/sda1/python-packages
  • Установите интегрированную среду Flask Python:
pip install --target /mnt/sda1/python-packages flask

Вы можете увидеть некоторые предупреждающие сообщения, однако их можно проигнорировать.

  • Обновите путь поиска файлов пакета Python:
echo "export PYTHONPATH=/mnt/sda1/python-packages" >> /etc/profile
  • Создайте директории, в которые среда Arduino IDE будет подгружать файлы веб-сервера:
mkdir /mnt/sda1/Arduino mkdir /mnt/sda1/arduino/www
  • Перезагрузите Arduino Yún, чтобы обновить путь поиска файлов Python.

  • Загрузите библиотеку IR library. (Arduino IRremote, библиотека создана Ken Shirriff .)
    Распакуйте архив, переименуйте папку с Arduino _ IRremote - master на Arduino _ IRremote , и импортируйте папку Arduino_IRremote как библиотеку в среду разработки Arduino IDE. Подробная информация указана
  • Загрузите скетч Smart Remote Control Arduino из zip архива отсюда .
    Распакуйте архив и перетащите папку SmartRemoteControl в папку со скетчем Arduino. Откройте скетч в Arduino IDE.
  • Скомпилируйте скетч и загрузите его в модуль Yún по WiFi, выбрав соответствующую опцию в списке портов Arduino Yún. Убедитесь в загрузке скетча по WiFi, чтобы требуемые скрипты python скопировались в модуль Yún! После загрузки скетча откройте Serial Monitor в среде Arduino IDE (это может занять несколько минут).
  • Нацельте пульт дистанционного управления на инфракрасный датчик и нажмите несколько кнопок на пульте. Вы должны увидеть код на мониторе Serial Monitor. Если код не отображается, тогда проверьте подключение цепей датчика.

Шаг #4: Конфигурирование кодов пульта дистанционного управления

  • Теперь вы можете сконфигурировать операции (activities) и коды пульта дистанционного управления, связав их с XML файлом конфигурации. Используя текстовый редактор, откройте файл activities . xml в поддиректории www папки скетча на вашем ПК. (Из Arduino IDE, нажмите меню Sketch и выберите "Show Sketch Folder").
  • Примите во внимание формат примера операций в файле. Каждый блок операции определяет имя атрибута, которое будет отображаться как кнопка на веб-странице пульта. Внутри каждой операции блок кодов содержит последовательность инфракрасных кодов, которые необходимо выполнить. В примере сначала выполняется команда Sony A90 (вкл/выкл питания) для включения телевизора, затем команда Panasonic (вкл/выкл питания) для включения Blu-ray плеера. Каждый код имеет строковый параметр, который является прямым выходом данных обнаруженного кода пульта из скетча Arduino.
  • Добавьте свои команды в файл, скопировав пример и изменив названия и коды. Когда пульт нацелен на инфракрасный датчик, нажмите кнопки и внимательно запишите определенную инфракрасную кодовую последовательность. Скопируйте последовательность в конфигурацию кода операции.
  • Как только вы получите нужный файл конфигурации, сохраните файл и повторно загрузите скетч в модуль Yún по WiFi. Для обновления файла конфигурации измените файл и загрузите скетч по WiFi с использованием среды Arduino IDE.

Шаг #5: Запуск сервера с веб-интерфейсом

  • Для запуска сервера подключите модуль Yún через SSH. Для запуска сервера выполните следующую команду:
python /mnt/sda1/arduino/www/SmartRemoteControl/server.py
  • При успешном запуске сервера вы увидите сообщение:
* Running on http://0.0.0.0:5000/ * Restarting with reloader
  • Если вы увидите ошибку, тогда проверьте все зависимости, установленные на предыдущих этапах.
  • В веб-браузере введите адрес http://arduino.local:5000/. Если браузер не поддерживает mDNS URL (как Windows, Android, и некоторые дистрибутивы Linux) введите http://arduino _ ip _ address :5000/, где arduino _ ip _ address - это IP адрес вашего Arduino Yún. IP адрес располагается в нижней части среды Arduino IDE при подключении Yún (рисунок 2).
  • После загрузки страницы вы увидите список сконфигурированных операций для кнопок. Если вы увидите ошибку, тогда проверьте правильность установки зависимостей, загруженный скетч, и что сервер работает без ошибок.
  • Для остановки сервера нажмите комбинацию Ctrl-C в командном окне, в котором запускался сервер.

Шаг #6: Использование веб-интерфейса

  • Для использования умного пульта нацельте светодиод на электронные устройства и нажмите одну из активных кнопок. Если требуемое устройство не включается, попытайтесь приблизить светодиод ближе к требуемым устройствам. Зона действия светодиода небольшая, около 6 футов. Необходимо добавить транзистор для увеличения зоны действия светодиода. Подробная информация указана здесь .
  • Вы также можете протестировать инфракрасные коды, открыв Yún Serial Monitor в среде Arduino IDE и отправив инфракрасный код как команду. Например, отправка кода "SONY: C A90" (без кавычек) приведет к отправке аппаратными средствами команды на включение Sony A90. ("C" представляет собой бит длины команды,12, преобразованный в шестнадцатеричный вид).
  • Для автоматического запуска сервера при загрузке отредактируйте файл / etc / rc . local в модуле Yún (с помощью редактора nano или vi) и добавьте следующую строку перед строкой "exit 0" в конце:
PYTHONPATH=/mnt/sda1/python-packages python /mnt/sda1/arduino/www/SmartRemoteControl/server.py
  • Для речевого распознавания запустите браузер Google Chrome. Нажмите кнопку "Speak" и браузер Chrome запросит разрешение на использование микрофона. После этого произнесите название активной операции и подождите, пока она не будет распознана. Например, для выполнения операции просмотра фильма "Movies", нажмите кнопку "Speak", и скажите в микрофон слово "Movies" (Фильмы). Фразы, такие как "Play Movies" (Просмотреть фильмы) или "Run Movies" (Запустить фильмы), не поддерживаются - распознается только четкое название активной операции.

Рассмотрим на этом занятии подключение ИК приемника к Ардуино. Расскажем какую библиотеку следует использовать для IR приемника, продемонстрируем скетч для тестирования работы инфракрасного приемника от пульта дистанционного управления и разберем команды в языке C++ для получения сигнала. Сразу отметим, что IR датчик Ардуино подходит не к каждому пульту, частота сигнала может отличаться.

Устройство ИК приемника. Принцип работы

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

Принцип работы IR ресивера. Обработка сигнала от пульта ДУ

ИК-приемник на Ардуино способен принимать и обрабатывать инфракрасный сигнал, в виде импульсов заданной длительности и частоты. Используется при изготовлении датчика препятствия и дальномера для Arduino. Обычно ИК-приемник имеет три ножки и состоит из следующих элементов: PIN-фотодиод, усилитель, полосовой фильтр, амплитудный детектор, интегрирующий фильтр и выходной транзистор.

Под действием инфракрасного излучения в фотодиоде, у которого между p и n областями создана дополнительная область из полупроводника (i -область), начинает течь ток. Сигнал поступает на усилитель и далее на полосовой фильтр, который настроен на фиксированную частоту: 30; 33; 36; 38; 40 и 56 килогерц и защищает приемник от помех. Помехи могут создавать любые бытовые приборы.

Чтобы сигнал от пульта ДУ принимался ИК приемником Ардуино, пульт должен быть с той же частотой, на которую настроен фильтр в IR приемнике. Поэтому не каждый пульт дистанционного управления подойдет для работы. Следует подбирать IR приемник и IR передатчик с одной частотой. После фильтра сигнал поступает на амплитудный детектор, интегрирующий фильтр и выходной транзистор.

Как подключить ИК приемник к Ардуино

Корпуса инфракрасных приемников содержат оптический фильтр для защиты прибора от внешних электромагнитных полей, изготавливаются они специальной формы для фокусировки принимаемого излучения на фотодиоде. Для подключения IR приемника к Arduino UNO используют три ножки, которые соединяют с — GND, 5V и A0. Советуем для начала использовать 3,3 Вольта, чтобы не сжечь ИК датчик при настройке.

Для занятия нам понадобятся следующие детали:

  • плата Arduino Uno / Arduino Nano / Arduino Mega;
  • макетная плата;
  • IR приемник;
  • пульт ДУ;
  • 1 светодиод и резистор 220 Ом;
  • провода «папа-папа» и «папа-мама».

Схема подключения ИК приемника к аналоговому порту Ардуино

Подключите IR приемник по схеме, представленной выше, и подключите светодиоды к 12 и 13 пину. Перед загрузкой программы, вам потребуется установить библиотеку IRremote.h, если она не была еще установлена. Данная библиотека не относится к стандартным библиотекам среды программирования Arduino IDE. Скачать библиотеку IRremote.h и готовый скетч можно одним архивом с Google Диск по ссылке .

Скетч для ИК приемника Arduino:

#include // подключаем библиотеку для IR приемника IRrecv irrecv(A0); // указываем пин, к которому подключен IR приемник decode_results results; void setup () // процедура setup { irrecv.enableIRIn (); // запускаем прием инфракрасного сигнала pinMode (13, OUTPUT ); // пин 13 будет выходом (англ. «output») pinMode (12, OUTPUT ); // пин 12 будет выходом (англ. «output») pinMode (A0, INPUT ); // пин A0 будет входом (англ. «intput») Serial .begin (9600); // подключаем монитор порта } void loop () // процедура loop { if (irrecv.decode (&results)) // если данные пришли выполняем команды { Serial .println (results.value); // отправляем полученные данные на порт // включаем и выключаем светодиоды, в зависимости от полученного сигнала if (results.value == 16754775) { digitalWrite (13, HIGH ); } if (results.value == 16769055) { digitalWrite (13, LOW ); } if (results.value == 16718055) { digitalWrite (12, HIGH ); } if (results.value == 16724175) { digitalWrite (12, LOW ); } irrecv.resume (); // принимаем следующий сигнал на ИК приемнике } }

Пояснения к коду:

  1. Библиотека IRremote.h содержит набор команд и позволяет упростить скетч;
  2. Оператор decode_results присваивает получаемым сигналам от пульта дистанционного управления имя переменной results .

ИК датчик можно применять во многих устройствах на микроконтроллере Ардуино, в том числе, можно сделать дистанционное управление сервоприводом на Ардуино от ИК приемника. При настройке следует включить монитор порта Arduino IDE и узнать какой сигнал отправляет та или иная кнопка на пульте ДУ. Полученные коды следует использовать в скетче после знака двойного равенства в условиях if () .

Также часто читают:

Есть много статей в интернете о том, как сделать свой пульт к телевизору на Arduino, но мне понадобился универсальный пульт для управления телевизором и медиа-плеером. Главное преимущество моего универсального пульта в том, что кнопки в приложении для андроид телефона двух-целевые, а впрочем, смотрите на видео.



Пульт очень удобен в том, что на экране практически одни и те же кнопки используются для управления телевизором и плеером. Одно отличие в том, что кнопка "AV " в режиме управления телевизором меняется на кнопку "" (stop) при переходе в режим управления плеером. На картинках показано два режима, слева режим управления телевизором, справа - режим управления плеером.

Ну а сейчас я расскажу немного о создании такого пульта. Для устройства использовал пульт от телевизора ERGO и пульт от медиаплеера DUNE HD TV101W.

Для получения данных от пультов я использовал инфракрасный датчик TSOP1138 (аналог TSOP4838) на рабочей частоте 38 кГц и подключил его к плате Arduino по схеме:

Этот скетч на потребуется для определения кодировки передачи данных и считывания кода кнопок пультов.

В скетче в строке int RECV_PIN = 11; указываем наш пин под номером 4

После заливки скетча открываем «монитор порта» и, нажимая на кнопки пульта, смотрим на полученные данные.

На картинке пример сканирования кнопки включения от пульта телевизора и пульта плеера. Теперь формируем таблицу для кодов кнопок.

У меня получилось как на фото выше. Под надписью TV коды кнопок пульта от телевизора; под надписью Player - коды от пульта медиаплеера.

Теперь отключаем наш приемник инфракрасных сигналов от платы Arduino и подключаем к ней Bluetooth модуль HC-05 и инфракрасный светодиод по схеме на фото.

После этого переходим непосредственно к скетчу.

Скетч

#include IRsend irsend; int y = 1; void setup() { Serial.begin(9600); } void loop() { if (Serial.available() > 0) { int x = Serial.read(); if (x == 49) { y = 1; } if (x == 50) { y = 2; } if (y == 1) { // коды кнопок для пульта от телевизора if (x == 97) { irsend.sendNEC(0x807F08F7, 32); delay(40); } if (x == 98) { irsend.sendNEC(0x807FA857, 32); delay(40); } if (x == 99) { irsend.sendNEC(0x807F708F, 32); delay(40); } if (x == 100) { irsend.sendNEC(0x807FF00F, 32); delay(40); } if (x == 101) { irsend.sendNEC(0x807F30CF, 32); delay(40); } if (x == 102) { irsend.sendNEC(0x807FB04F, 32); delay(40); } if (x == 103) { irsend.sendNEC(0x807F9867, 32); delay(40); } if (x == 104) { irsend.sendNEC(0x807F58A7, 32); delay(40); } if (x == 105) { irsend.sendNEC(0x807FD827, 32); delay(40); } if (x == 106) { irsend.sendNEC(0x807F38C7, 32); delay(40); } if (x == 107) { irsend.sendNEC(0x807F48B7, 32); delay(40); } if (x == 108) { irsend.sendNEC(0x807FB847, 32); delay(40); } if (x == 109) { irsend.sendNEC(0x807F6897, 32); delay(40); } } if (y == 2) { //коды кнопок пульта от медиаплеера if (x == 97) { irsend.sendNEC(0xFDC23D, 32); delay(40); } if (x == 98) { irsend.sendNEC(0xFDE01F, 32); delay(40); } if (x == 99) { irsend.sendNEC(0xFD18E7, 32); delay(40); } if (x == 100) { irsend.sendNEC(0xFDE817, 32); delay(40); } if (x == 101) { irsend.sendNEC(0xFDA857, 32); delay(40); } if (x == 102) { irsend.sendNEC(0xFD6897, 32); delay(40); } if (x == 103) { irsend.sendNEC(0xFDA857, 32); delay(40); } if (x == 104) { irsend.sendNEC(0xFD6897, 32); delay(40); } if (x == 105) { irsend.sendNEC(0xFDE817, 32); delay(40); } if (x == 106) { irsend.sendNEC(0xFD18E7, 32); delay(40); } if (x == 107) { irsend.sendNEC(0xFD9867, 32); delay(40); } if (x == 108) { irsend.sendNEC(0xFD28D7, 32); delay(40); } if (x == 109) { irsend.sendNEC(0xFD20DF, 32); delay(40); } } } }


В скетче вам потребуется отредактировать коды кнопок, а именно в строках:

If (x == 97) { irsend.sendNEC(0x807F08F7, 32); delay(40);
Значение 807F08F7 поменять на:

If (y == 1) { //коды кнопок для пульта от телевизора if (x == 97) { irsend.sendNEC(0x12345678, 32); delay(40); }
Где 12345678 - это код вашей кнопки.

После редактирования скетча по ваши коды кнопок заливаем скетч в плату Arduino и переходим к установке приложения на телефон.

Включаем блютуз в телефоне, ищем наше устройство, создаем пару, потом запускаем приложение Pult на телефоне.

При запуске у нас появится экран с красным значком bluetooth в правом нижнем углу, что сигнализирует о том, что мы не подключены к нашему устройству.

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

Теперь мы снова вернулись на главный экран и уже можем управлять телевизором:

Для перехода в режим управления нам потребуется нажать кнопку с надписью «Player» . Как я говорил раньше, у нас кнопка с надписью «AV» поменяется на кнопку "":

Для отключения от нашего устройства просто зажмите кнопку «Power» на несколько секунд.

Ну и несколько фотографий моего готового устройства.

Получилось, вроде, неплохо. Жду комментарии к статье.

Есть много статей в интернете о том, как сделать свой пульт к телевизору на Arduino, но мне понадобился универсальный пульт для управления телевизором и медиа-плеером. Главное преимущество моего универсального пульта в том, что кнопки в приложении для андроид телефона двух-целевые, а впрочем, смотрите на видео.



Пульт очень удобен в том, что на экране практически одни и те же кнопки используются для управления телевизором и плеером. Одно отличие в том, что кнопка "AV " в режиме управления телевизором меняется на кнопку "" (stop) при переходе в режим управления плеером. На картинках показано два режима, слева режим управления телевизором, справа - режим управления плеером.

Ну а сейчас я расскажу немного о создании такого пульта. Для устройства использовал пульт от телевизора ERGO и пульт от медиаплеера DUNE HD TV101W.

Для получения данных от пультов я использовал инфракрасный датчик TSOP1138 (аналог TSOP4838) на рабочей частоте 38 кГц и подключил его к плате Arduino по схеме:

Этот скетч на потребуется для определения кодировки передачи данных и считывания кода кнопок пультов.

В скетче в строке int RECV_PIN = 11; указываем наш пин под номером 4

После заливки скетча открываем «монитор порта» и, нажимая на кнопки пульта, смотрим на полученные данные.

На картинке пример сканирования кнопки включения от пульта телевизора и пульта плеера. Теперь формируем таблицу для кодов кнопок.

У меня получилось как на фото выше. Под надписью TV коды кнопок пульта от телевизора; под надписью Player - коды от пульта медиаплеера.

Теперь отключаем наш приемник инфракрасных сигналов от платы Arduino и подключаем к ней Bluetooth модуль HC-05 и инфракрасный светодиод по схеме на фото.

После этого переходим непосредственно к скетчу.

Скетч

#include IRsend irsend; int y = 1; void setup() { Serial.begin(9600); } void loop() { if (Serial.available() > 0) { int x = Serial.read(); if (x == 49) { y = 1; } if (x == 50) { y = 2; } if (y == 1) { // коды кнопок для пульта от телевизора if (x == 97) { irsend.sendNEC(0x807F08F7, 32); delay(40); } if (x == 98) { irsend.sendNEC(0x807FA857, 32); delay(40); } if (x == 99) { irsend.sendNEC(0x807F708F, 32); delay(40); } if (x == 100) { irsend.sendNEC(0x807FF00F, 32); delay(40); } if (x == 101) { irsend.sendNEC(0x807F30CF, 32); delay(40); } if (x == 102) { irsend.sendNEC(0x807FB04F, 32); delay(40); } if (x == 103) { irsend.sendNEC(0x807F9867, 32); delay(40); } if (x == 104) { irsend.sendNEC(0x807F58A7, 32); delay(40); } if (x == 105) { irsend.sendNEC(0x807FD827, 32); delay(40); } if (x == 106) { irsend.sendNEC(0x807F38C7, 32); delay(40); } if (x == 107) { irsend.sendNEC(0x807F48B7, 32); delay(40); } if (x == 108) { irsend.sendNEC(0x807FB847, 32); delay(40); } if (x == 109) { irsend.sendNEC(0x807F6897, 32); delay(40); } } if (y == 2) { //коды кнопок пульта от медиаплеера if (x == 97) { irsend.sendNEC(0xFDC23D, 32); delay(40); } if (x == 98) { irsend.sendNEC(0xFDE01F, 32); delay(40); } if (x == 99) { irsend.sendNEC(0xFD18E7, 32); delay(40); } if (x == 100) { irsend.sendNEC(0xFDE817, 32); delay(40); } if (x == 101) { irsend.sendNEC(0xFDA857, 32); delay(40); } if (x == 102) { irsend.sendNEC(0xFD6897, 32); delay(40); } if (x == 103) { irsend.sendNEC(0xFDA857, 32); delay(40); } if (x == 104) { irsend.sendNEC(0xFD6897, 32); delay(40); } if (x == 105) { irsend.sendNEC(0xFDE817, 32); delay(40); } if (x == 106) { irsend.sendNEC(0xFD18E7, 32); delay(40); } if (x == 107) { irsend.sendNEC(0xFD9867, 32); delay(40); } if (x == 108) { irsend.sendNEC(0xFD28D7, 32); delay(40); } if (x == 109) { irsend.sendNEC(0xFD20DF, 32); delay(40); } } } }


В скетче вам потребуется отредактировать коды кнопок, а именно в строках:

If (x == 97) { irsend.sendNEC(0x807F08F7, 32); delay(40);
Значение 807F08F7 поменять на:

If (y == 1) { //коды кнопок для пульта от телевизора if (x == 97) { irsend.sendNEC(0x12345678, 32); delay(40); }
Где 12345678 - это код вашей кнопки.

После редактирования скетча по ваши коды кнопок заливаем скетч в плату Arduino и переходим к установке приложения на телефон.

Включаем блютуз в телефоне, ищем наше устройство, создаем пару, потом запускаем приложение Pult на телефоне.

При запуске у нас появится экран с красным значком bluetooth в правом нижнем углу, что сигнализирует о том, что мы не подключены к нашему устройству.

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

Теперь мы снова вернулись на главный экран и уже можем управлять телевизором:

Для перехода в режим управления нам потребуется нажать кнопку с надписью «Player» . Как я говорил раньше, у нас кнопка с надписью «AV» поменяется на кнопку "":

Для отключения от нашего устройства просто зажмите кнопку «Power» на несколько секунд.

Ну и несколько фотографий моего готового устройства.

Получилось, вроде, неплохо. Жду комментарии к статье.

Лучшие статьи по теме