Устройства на avr: AVR project.ru — Проекты на микроконтроллерах AVR

Содержание

Устройства на микроконтроллерах Atmel серии AVR

GSM сигнализация для автомобиля (ATmega16) 07.10.2010
Устройство предназначено для своевременного оповещения автовладельца о взломе автомобиля. Сигнализация контролирует двери, окна,…
Просмотров: 10390

Простой цифровой спидометр с семисегментным индикатором (ATmega8) 07.10.2010
Устройство представляет собой простой спидометр на AVR микроконтроллере. Его отличительной чертой является минимум деталей, всего 4…
Просмотров: 13394

Тахометр на AVR микроконтроллере (ATtiny2313, C) 13.01.2010
Данное устройство представляет собой неплохой тахометр, предел его измерений составляет 100 — 9990 об/мин. Точность измерения — ± 3 об/мин….
Просмотров: 27914

Mega-Генератор (ATmega16, C) 09.08.2008
Попросили меня как-то на работе (автосервис) организовать генератор для проверки различных электроклапанов, инжекторов, катушек. ..
Просмотров: 9447

Простейший бортовой компьютер на любой инжекторный двигатель (ATmega8, C) 08.08.2008

Все началось с того, что как мне казалось, у меня большой расход топлива. Машина у меня Audi-80 с 2-х литровым движком (ABT) и моновпрыском (одна…
Просмотров: 13395

Автомобильный тахометр (AT89C2051, asm) 08.08.2008
Автомобильный тахометр представляет собой функционально законченный блок, который устанавливается в салоне автомобиля. …
Просмотров: 10902

Релейный регулятор громкости по схеме Никитина c LED дисплеем, ПДУ (RC5) (ATmega8, C) 16.02.2011
Как следует из названия, в данной статье представлено устройство собранное на микроконтроллере для регулирования громкости, по…
Просмотров: 5473

Релейный регулятор громкости по схеме Никитина с LCD дисплеем и ПДУ (RC5) (ATmega8, C) 16.02.2011
Как следует из названия, в данной статье представляется устройство для регулирования громкости, собранное по схеме Никитина.

В отличии…
Просмотров: 4326

Релейный регулятор громкости по схеме Никитина с LCD, ПДУ (RC5) и кнопками (ATmega8, C) 16.02.2011
Как следует из названия, в данной статье представляется устройство для регулирования громкости, собранное по схеме Никитина. В этой…
Просмотров: 3076

Релейный регулятор громкости по схеме Никитина с LCD, ПДУ (RC5) и энкодером (ATmega8, C) 16.02.2011
Очередная модификация устрйоства для регулирования громкости, собранно по схеме Никитина. В этой версии присутствует LCD дисплей для…
Просмотров: 6041

Одноканальный микроконтроллерный приёмник диапазона 400 мГц на синтезаторе (ATtiny24) 02.12.2010
Приёмник предназначен для приёма сигналов радиомикрофонов на ПАВ-резонаторах, работающих в диапазоне 400-450 мГц с WFM – широкополосной…

Просмотров: 3669

Приёмник 399-469 мГц с дисплеем от NOKIA 3310 (ATmega8) 02.12.2010
Данный приёмник является продолжением разработки «Приёмника диапазона 4хх мГц на синтезаторе».   Приёмник имеет следующие…
Просмотров: 5843

Простой WAV плеер на AVR микроконтроллере (ATtiny25/45/85, C) 31.10.2010
Это простой SD аудио плеер на одном микроконтроллере ATtiny25/45/85. У этих микроконтроллеров есть два быстрых ШИМ (fast PWM) выхода с несущей…
Просмотров: 9521

Музыкальный Звонок на MMC/SD карте (ATmega32, C) 17.03.2008
Простые однотональные мелодии на сегодняшний день уже не могут вызвать восторга у благодарных слушателей. За примерами далеко ходить…

Просмотров: 9378

AVR-USB-MEGA16: USB BootloadHID для микроконтроллеров AVR (ATmega8, ATmega16, C) 30.08.2010
В статье описывается USB bootloader BootloadHID, который хорошо подходит для ATmega8 и ATmega16, так как у него код умещается в 2048…
Просмотров: 5829

Загрузчики (bootloader) для микроконтроллеров AVR 30.08.2010
Описана технология bootloader, встроенная во все микроконтроллеры Atmel AVR семейства ATmega. Материал для статьи взят с сайта…
Просмотров: 6388

Управление электрическими цепями через USB (ATmega8, C) 29.10.2011
Давайте сделаем устройство, которое будет подключаться к USB и сможет управлять электроцепями(например, включать освещение),…

Просмотров: 18359

USB-контроллер джойстика на основе микроконтроллера AVR (ATmega8, C) 15.05.2011
Я начал разрабатывать этот контроллер джойстика, вдохновленный необходимостью в простом самодельном джойстике, который мог бы…
Просмотров: 9416

LCD2USB — подключение LCD индикатора к компьютеру через USB (ATmega8, C) 04.10.2010
Цель LCD2USB — подсоединить текстовые дисплеи на основе контроллера HD44780 к персональным компьютерам (PC) через USB. LCD2USB разрабатывался как…
Просмотров: 6727

Простой VGA/Видео адаптер (ATmega8, C) 28.08.2010
Задавшись целью подключить VGA-монитор для вывода текстовых данных с микроконтроллерной системы сбора информации — я с удивлением. ..
Просмотров: 10457

Уменьшение шума от кулеров, с выводом температур на LCD (ATmega8, C) 28.08.2010
Устройство создано для уменьшения шума от кулеров компьютера и контроле температур в системном блоке на LCD дисплее. Включает в себя…
Просмотров: 3959

Индикатор интенсивности работы компьютера (AT89C2051, asm) 28.08.2010
Идея создания этого устройства пришла после того, как в компьютере начали разом «стучать» оба жестких диска, причиной чего, как…
Просмотров: 3978

Регулятор оборотов 12V вентилятора на DS18B20 (ATtiny13, C) 01.07.2009
Взял все вентиляторы из своего компа и попробовал при каком напряжении они стартуют. Получилась довольно печальная картина: некоторые…
Просмотров: 12234

Подключение знакосинтезирующего LCD 4×16 к USB (AT90S2313, C) 01.07.2009
Данный проект представляет из себя LCD дисплей 4×16 подключаемый к USB. Проект реализован на довольно дешёвом и доступном МК AT93S2313 формы Atmel.


Просмотров: 3037

Управление большим количеством нагрузок через USB/COM порт (PIC18F252, C) 15.02.2009
Цель устройства — обеспечить контроль большого числа цифровых нагрузок через компьютер. Основные применение — автоматическое…
Просмотров: 5722

Стрелочный индикатор загрузки центрального процессора (AT90S2313, C) 09.08.2008
Драйвер берет значение текущей загрузки ЦП и передает его в СОМ порт. К СОМ порту подключен контроллер, принимающий значения текущей…
Просмотров: 4559

Цифровая паяльная станция своими руками (ATmega8, C) 27.05.2012
Состав: ATmega8, LM358, IRFZ44, 7805, мост, 13 резисторов, один потенциометр, 2 электролита, 4 конденсатора, трехразрядный светодиодный семисегментный…

Просмотров: 46060

Переделка ультразвуковой ванночки Ya Xun YX2000A (ATtiny2313, C) 12.03.2011
Перед покупкой уз-ванночки я долго бегал по городу и заходил в сервисные центры, где ремонтируют мобилки, чтобы узнать, какими. ..
Просмотров: 5415

Измеритель емкости и индуктивности (ATtiny15, asm) 19.02.2011
Описание опубликовано в журналах «Радио» № 7 за 2004 г., стр. 26, 27 Измеритель LC и «Радиолюбитель» № 8 за 2005 г., стр. 35…37 Измеритель…
Просмотров: 7878

Тестер для LAN кабеля (ATtiny2313, asm) 02.11.2010
Очень простой но практичный тестер для LAN кабелей. Проверяет тип кабеля (прямой или кросс), а так же возможные неисправности. Фото…

Просмотров: 6712

Цифровой осциллограф на микроконтроллере AVR (ATmega32, C) 01.11.2010
Несколько месяцев назад, во время сёрфинга в интернете, я наткнулся на осциллограф на микроконтроллере PIC18F2550 и графическом дисплее на…
Просмотров: 11409

Частотомер на AVR микроконтроллере (ATmega16, C) 11.10.2010
Частотомер 4-110 МГц. Изначально разработан для измерение частоты и подсчёта импульсов (за 1сек.) при разработке цифровых устройств, но. ..
Просмотров: 4204

Микроконтроллерный сверлильный станок для печатных плат (ATtiny13, C) 11.10.2010
Травить платы мы уже научились, теперь надо сверлить отверстия. Можно ручной дрелью, можно электродрелью, можно станком… Электродрелью…

Просмотров: 17212

Блок питания 3-20В, 0.1-10А (ATmega8, C) 12.01.2010
Без чего не может обойтись не один радиолюбитель? Правильно — без ХОРОШЕГО блока питания, а ещё лучше ХОРОШЕГО ДВУХКАНАЛЬНОГО блока…
Просмотров: 25935

Микроконтроллерный частотомер с LCD индикатором (ATmega8515, asm) 09.08.2008
Принцип работы частотомера хорошо известен. Подсчитав число периодов входного сигнала за известное время, он приводит его к секундному…
Просмотров: 4339

Таймер для паяльника (ATmega16, C) 09.08.2008
Многие из нас сталкивались с прогоранием жала паяльника из-за того, что забыли выключить после завершения заботы. Так же горячий. ..

Просмотров: 3275

Цифровая паяльная станция своими руками (v1.0) (ATmega8, C) 09.08.2008
Начать нужно с того, что однажды я озадачился приобретением паяльной станции, ибо «вечные» жала портятся от перегрева, а мой…
Просмотров: 11425

Цифровая паяльная станция своими руками (v2.0) (ATmega8, C) 09.08.2008
Это вторая версия статьи «Цифровая паяльная станция своими руками» Начать нужно с того, что однажды я озадачился приобретением…
Просмотров: 7620

Паяльная станция на микроконтроллере с PID регулятором температуры (ATmega8) 09.08.2008
Цифровая паяльная станция на микроконтроллере представляет собой по сути ПИД (Пропорционально — Интегрально — Дифференциальный)…
Просмотров: 11809

Mega-Генератор (ATmega16, C) 09.08.2008
Попросили меня как-то на работе (автосервис) организовать генератор для проверки различных электроклапанов, инжекторов, катушек.

..
Просмотров: 9447

Измеритель емкости и частотомер на AVR микроконтроллере (ATmega8, C) 09.08.2008
Предыстория данного проекта такая… Нашел я в интернете одну статейку китайского разработчика, в которой описывалось устройство…
Просмотров: 12589

Цифровой КСВ метр на микроконтроллере (ATmega8) 09.08.2008
Цифровой автоматический КСВ метр обеспечивает быстрый пересчет Коэффициента Стоячей Волны в автоматическом режиме. Этот прибор…
Просмотров: 5435

Вольтметр и амперметр на микроконтроллере для лабораторного блока питания (ATmega8) 09.08.2008
Не так давно я задался целью сделать себе для работы лабораторный источник питания. Долго думал как реализовать с помощью ШИМ и мощных…

Просмотров: 16306

Двухканальный стабилизированный диммер (с подробнейшим описанием) (ATmega16, asm) 03.08.2013
1. ОБЩИЕ СВЕДЕНИЯ 1.1. Введение Несмотря на бурное развитие сверх ярких светодиодов, в широкой продаже пока не появились светодиодные. ..
Просмотров: 5793

Cхемотехника и программирование устройств фазового регулирования (ATtiny2313, C) 24.11.2011
Кто из вас не хотел изготовить себе сенсорный диммер с возможностью дистанционного управления светом? Наверное, многие. Так вот и я…
Просмотров: 6162

Цифровой инклинометр (акселерометр) MMA7260Q (ATmega32, AD7799, C) 10.06.2011
Инклинометр — устройство, предназначенное для измерения угла наклона различных объектов, относительно гравитационного поля…
Просмотров: 5869

Динамическая индикация индикатора по последовательной шине (ATmega8, 74HC595, C) 17.02.2011
Девяти разрядный семисегментный индикатор с последовательной шиной выполнен на двух микросхемах 74HC595D. Индикатор стоял в…
Просмотров: 6110

Использование графического LCD WG12864A (ATmega8, C) 25.12.2010
Наряду с символьными ЖК, современные производители выпускают разнообразные графические индикаторы. Если у символьных, как правило,…
Просмотров: 5004

Применение семи сегментных LED модулей HT1611, HT1613, МТ10Т7-7 (asm) 24.12.2010
Практически любое микроконтроллерное устройство имеет те или иные устройства индикации. В простейшем случае это всего несколько…
Просмотров: 5295

Шаговые двигатели — Stepper motors (AT90S2313, asm) 24.12.2010
Шаговые двигатели уже давно и успешно применяются в самых разнообразных устройствах. Их можно встретить в дисководах, принтерах,…
Просмотров: 20090

Подключаем тачскрин к AVR — The AVR based USB HID Touchscreen Mouse (ATmega168, C) 19.11.2010
Примечание от администрации сайта eldigi.ru. Данная статья является поучительным примером по подключению резистивного сенсорного экрана…
Просмотров: 5284

LCD2USB — подключение LCD индикатора к компьютеру через USB (ATmega8, C) 04.10.2010
Цель LCD2USB — подсоединить текстовые дисплеи на основе контроллера HD44780 к персональным компьютерам (PC) через USB. LCD2USB разрабатывался как…
Просмотров: 6727

Приёмник RC5 на AVR контроллере (ATmega16, C) 25.09.2009
На рисунке сверху — структура посылки передатчика. По первым двум стартовым битам вычисляется период Р. Затем, как видно из рисунка,…
Просмотров: 3276

Подключение знакосинтезирующего LCD 4×16 к USB (AT90S2313, C) 01.07.2009
Данный проект представляет из себя LCD дисплей 4×16 подключаемый к USB. Проект реализован на довольно дешёвом и доступном МК AT93S2313 формы Atmel….
Просмотров: 3037

Управление большим количеством нагрузок через USB/COM порт (PIC18F252, C) 15.02.2009
Цель устройства — обеспечить контроль большого числа цифровых нагрузок через компьютер. Основные применение — автоматическое…
Просмотров: 5722

Музыкальный Звонок на MMC/SD карте (ATmega32, C) 17.03.2008
Простые однотональные мелодии на сегодняшний день уже не могут вызвать восторга у благодарных слушателей. За примерами далеко ходить…
Просмотров: 9378

Двухканальный стабилизированный диммер (с подробнейшим описанием) (ATmega16, asm) 03.08.2013
1. ОБЩИЕ СВЕДЕНИЯ 1.1. Введение Несмотря на бурное развитие сверх ярких светодиодов, в широкой продаже пока не появились светодиодные…
Просмотров: 5793

15-ти канальный управляемый диммер (ATmega8) 20.05.2011
В наш повседневный быт всё чаще входят различные интеллектуальные системы управления. Стиральные машинки давно сами стирают и сушат,…
Просмотров: 7718

Пульт дистанционного управления для цифровых зеркальных камер (ATtiny12, asm) 02.12.2010
Некоторые модели цифровых фотокамер имеют возможность дистанционного управления с помощью ИК-лучей. Дистанционное управление…
Просмотров: 4738

15-ти канальная система инфракрасного дистанционного управления (ATmega8) 26.10.2010
​ Основные возможности разработанного модуля дистанционного управления: · 15 выходов для подключения нагрузок; ·. ..
Просмотров: 4086

Универсальное устройство: часы, термометр, система удалённого управления (ATmega16) 01.08.2010
Устройство “Universal device” (Универсальное устройство) содержит в себе функции нескольких устройств, которые сильно облегчают жизнь…
Просмотров: 8069

Часы на микроконтроллере ATmega16 (ATmega16, C) 26.01.2010
От администрации сайта eldigi.ru Автор конструкции предоставил только схемы, исходники и проект для симуляции в Proteus-e. За что ему…
Просмотров: 6981

Сенсорный регулятор освещения с дистанционным управлением (ATtiny2313) 08.03.2009
Предлагаемое устройство — один из вариантов микроконтроллерных регуляторов яркости ламп накаливания, конструкции которых можно…
Просмотров: 7334

Многоканальная система дистанционного управления или «Умный дом» (ATmega16) 24.01.2009
Как говорится, лень – двигатель прогресса. Возможно, поэтому всё большее распространение получают системы дистанционного. ..
Просмотров: 9479

Часы на ATmega8 (ATmega8, C) 21.06.2008
Два датчика температуры DS18B20 (дома и на улице). 5 будильников. Отсрочка сигнала, если будильник не отключить, срабатывает примерно…
Просмотров: 15545

Домашняя метеостанция с часами, календарем и будильниками (ATmega32, C) 21.04.2008
Предлагаемый прибор отличается от аналогов использованием современной базы, исчерпывающим в домашних условиях набором измеряемых…
Просмотров: 9009

«МультиПульт» — расширь возможности своего пульта! (ATtiny2313) 13.04.2008
Данная конструкция будет интересна прежде всего владельцам ТВ тюнеров на чипсете Philips SAA7134 и SAA7135. Теоретически, любой пульт от таких ТВ…
Просмотров: 3179

Музыкальный Звонок на MMC/SD карте (ATmega32, C) 17.03.2008
Простые однотональные мелодии на сегодняшний день уже не могут вызвать восторга у благодарных слушателей. За примерами далеко ходить…
Просмотров: 9378

Регулятор яркости лампы накаливания на микроконтроллере (AT89C2051, asm) 01.03.2008
В этом проекте рассказывается о микроконтроллерном регуляторе яркости лампы накаливания (далее просто регулятор). Регулятор…
Просмотров: 6275

Регулятор освещения с дистанционным управлением (AT90S2313, C) 22.01.2008
Предлагаемый прибор умеет не только включать и выключать освещение, но и регулировать его яркость. Он имеет и дополнительную функцию…
Просмотров: 4698

Часы будильник термометр и ИК-ДУ (AT89C4051, C) 18.01.2008
Предлагаемое вниманию читателей устройство выполнено на современной элементной базе и отличается от ранее опубликованных в журнале…
Просмотров: 3661

Счетчик на микроконтроллере (AT90S2313, asm) 06.01.2008
Во многих устройствах бытовой техники и промышленной автоматики сравнительно недавних лет выпусков установлены механические. ..
Просмотров: 5256

Блок жизнеобеспечения аквариума (AT89C2051, asm) 08.12.2007
Блок жизнеобеспечения аквариума представляет собой функционально законченный блок, который управляет включением компрессора,…
Просмотров: 3728

Продвинутые радио-часы/будильник с термометрами на графическом LCD (ATmega8515) 29.11.2007
Представленное устройство не слишком рентабельно для серийного производства, но представляет собою весьма неплохой пример…
Просмотров: 6303

Датчик утечки газа на микроконтроллере (ATtiny13, C) 10.11.2010
В данной статье представлен датчик утечки газа на микроконтроллере ATtiny13, а в качестве сенсора газа применён MQ-4 фирмы HANWEI ELETRONICS. Это…
Просмотров: 6369

GSM сигнализация для автомобиля (ATmega16) 07.10.2010
Устройство предназначено для своевременного оповещения автовладельца о взломе автомобиля. Сигнализация контролирует двери, окна,. ..
Просмотров: 10390

Контроллер доступа «Tiny KTM» (AT90S2343) 09.08.2008
Контроллер доступа «Tiny KTM» — проще схемы не бывает! Контроллер предназначен для ограничения и контроля доступа в помещения, такие…
Просмотров: 3481

Электронный замок с ключами iButton (AT89C2051, asm) 09.08.2008
Некоторое время тому назад появился проект «ИМИТАТОР TOUCH-MEMORY DS1990A», т.е. отмычка. Теперь Вашему вниманию предлагается замок к зтой…
Просмотров: 4866

Если Вы потеряли Touch Memory… (AT89C2051, asm) 09.08.2008
Последнее время во многих организациях, а порой и дома, появились дверные замки, ключом к которым является таблетка Touch Memory фирмы DALLAS….
Просмотров: 4145

Имитатор touch-memory DS1990A (AT89C2051, asm) 09.08.2008
Этот проект является развитием проекта Если Вы потеряли Touch Memory… Имитатор touch-memory DS1990A, который предлагается Вашему вниманию, способен. ..
Просмотров: 4480

Телефонный охранный сигнализатор (AT90S2313, asm) 09.08.2008
Передать тревожный сигнал на некоторое расстояние можно различными способами. В случае охраны квартиры, когда расстояние до хозяина…
Просмотров: 2606

Автономная охранная система на базе ТМ (ATmega8) 09.08.2008
Автономные системы охраны получили достаточно широкое распространение в нашей стране из-за простоты и дешевизны. Классическая…
Просмотров: 5411

SignALL — GSM сигнализация всем (ATtiny2313) 09.08.2008
“SignALL” – GSM сигнализация (далее по тексту “устройство”), предназначена для охраны помещений, таких как квартиры, дачи,…
Просмотров: 8581

Контроллер доступа Visual KTM (ATiny2313) 09.08.2008
Контроллер предназначен для ограничения и контроля доступа в помещения, такие как жилая комната, рабочий кабинет и т.д., с количеством…
Просмотров: 3566

Система оповещения GSM-click (ATmega8, C) 09. 08.2008
Предлагаемое устройство предназначено для оповещения о произошедшем событии по GSM каналу, проще говоря СМС-кой. Подключаем его…
Просмотров: 4479

Зарядное устройство для NiMh и NiCd аккумуляторов AA AAA (ATmega8, C) 29.08.2010
Зарядное устройство предназначено для зарядки NiMh и NiCd аккумуляторов (АА AAA) методом быстрого заряда. В принципе сейчас много микросхем…
Просмотров: 7059

Повышающий преобразователь с PID регулятором (ATmega8) 01.04.2010
ПИД регулятор или пропорционально-интегрально-дифференциальный  регулятор – это самый совершенный из существующих типов…
Просмотров: 5079

Блок питания 3-20В, 0.1-10А (ATmega8, C) 12.01.2010
Без чего не может обойтись не один радиолюбитель? Правильно — без ХОРОШЕГО блока питания, а ещё лучше ХОРОШЕГО ДВУХКАНАЛЬНОГО блока…
Просмотров: 25935

Устройство защиты от опасных напряжений (трёхфазное) SOKOL UZP-3F (ATmega8) 08. 06.2009
Часто причиной выхода из строя дорогостоящего оборудования, в первую очередь промышленного, является отклонение сетевого напряжения…
Просмотров: 3601

Устройство защиты от опасных напряжений в электросети SOKOL UZP-1F (ATmega8) 08.05.2009
Основные возможности устройства: Изменение и индикация на двустрочном ЖК-дисплее действующего значения напряжения в диапазоне…
Просмотров: 2795

Вольтметр и амперметр на микроконтроллере для лабораторного блока питания (ATmega8) 09.08.2008
Не так давно я задался целью сделать себе для работы лабораторный источник питания. Долго думал как реализовать с помощью ШИМ и мощных…
Просмотров: 16306

Моддинг блока питания (ATmega8) 25.04.2008
Наверняка нет радиолюбителя, который бы не делал для собственных нужд лабораторный блок питания (БП). Сложность таких устройств может…
Просмотров: 5918

Два микроконтроллерных регулятора мощности (AT89C2051, asm) 30. 01.2008
Рис. 1 Для управления инерционной нагрузкой часто применяются тиристорные регуляторы мощности, работающие по принципу подачи на…
Просмотров: 3950

Повышающий преобразователь напряжения на AVR (AT90S2313, asm) 15.01.2008
История создания этого девайса такова: некий господин N, экстремал в годах и большой любитель сплава по горным рекам, утопил в одном из…
Просмотров: 3819

Зарядное устройство для малогабаритных аккумуляторов (AT89C2051, MCP3208, asm) 08.12.2007
Зарядное устройство предназначено для зарядки любых малогабаритных аккумуляторов емкостью до 2А*Ч. Ток выдаваемый зарядным…
Просмотров: 3781

USB программатор микроконтроллеров AVR / 89S совместимый с AVR910 (ATmega8, C) 22.01.2012
Схема программатора приведена на рисунке ниже. Предохранитель F1 служит для защиты линий питания порта USB от случайного замыкания по…
Просмотров: 10641

USB, COM отладчик JTAG ICE (ATmega16) 27. 04.2010
Иногда, программа зашитая в микроконтроллера работает совсем не так как надо её создателю. Тогда наступает стадия отладки (Отлаживать…
Просмотров: 3951

Параллельный программатор для микроконтроллеров AVR (ATmega16) 16.02.2008
Поводом для создания данного устройства послужило появление новых чипов AVR поддерживающих отладку по протоколу debugWIRE. Так как он не…
Просмотров: 13746

USB параллельный программатор для микроконтроллеров AVR (ATmega16) 16.02.2008
Этот программатор является продолжением «Параллельного программатора для микроконтроллеров AVR»  Предлагаемый вариант…
Просмотров: 6211

Пульт дистанционного управления для цифровых зеркальных камер (ATtiny12, asm) 02.12.2010
Некоторые модели цифровых фотокамер имеют возможность дистанционного управления с помощью ИК-лучей. Дистанционное управление…
Просмотров: 4738

Cхемотехника и программирование устройств фазового регулирования (ATtiny2313, C) 24. 11.2011
Кто из вас не хотел изготовить себе сенсорный диммер с возможностью дистанционного управления светом? Наверное, многие. Так вот и я…
Просмотров: 6162

15-ти канальный управляемый диммер (ATmega8) 20.05.2011
В наш повседневный быт всё чаще входят различные интеллектуальные системы управления. Стиральные машинки давно сами стирают и сушат,…
Просмотров: 7718

PWM (ШИМ) управление LED матрицей 8х8 через регистр сдвига 74HC595 (ATmega8, C) 23.01.2011
Есть матрица 8х8, одноцветная. Всего, соответственно, 16 выходов: 8 на столбцы и 8 на строки. Проблема номер один – понять какой контакт чем…
Просмотров: 5629

Светодиодное табло «Волшебная палочка» (AT89C2051/PIC18C84, asm) 06.11.2010
За этим замысловатым названием кроется очень интересная конструкция на PIC-контроллере. Главное достоинство — это оригинальность идеи. В…
Просмотров: 4522

Бегущая строка на микроконтролере (AT90S2313) 21. 08.2008
Это устройство может использоваться как гирлянда на праздниках, вечеринках. Для вывода поздравительных сообщений. А так же везде, где…
Просмотров: 5407

Регулятор яркости лампы накаливания на микроконтроллере (AT89C2051, asm) 01.03.2008
В этом проекте рассказывается о микроконтроллерном регуляторе яркости лампы накаливания (далее просто регулятор). Регулятор…
Просмотров: 6275

Многоканальный USB-Термометр (ATmega8, C) 27.10.2011
Когда то давно я написал статью о том, как сделать USB Термометр и разместил ее на двух сайтах. Девайс очень простой, но спустя пару дней,…
Просмотров: 5188

Уменьшение шума от кулеров, с выводом температур на LCD (ATmega8, C) 28.08.2010
Устройство создано для уменьшения шума от кулеров компьютера и контроле температур в системном блоке на LCD дисплее. Включает в себя…
Просмотров: 3959

USB Термометр (ATmega8, C) 10.03. 2010
В качестве микроконтроллера, был выбран ATmega8 (такие, как ATtiny8/48 не захотел использовать по причине их дискретности в некоторых городах)….
Просмотров: 6756

Термостат на ATtiny2313 и DS18B20 (ATtiny2313, C) 13.01.2010
Данная конструкция стала прямым продолжением конструкции «Термометр на ATtiny2313 и DS18B20». Как там упоминалось, хотелось…
Просмотров: 9699

Улучшенный термостат на ATtiny2313 и DS18B20 (ATtiny2313, C) 13.01.2010
По многочисленным просьбам дорабатываю конструкцию «Термостат на ATtiny2313 и DS18B20». Теперь умеет: Измерение температуры от -55°С до…
Просмотров: 26374

Термометр на ATtiny2313 и DS18B20 (ATtiny2313, C) 12.01.2010
В Интернете есть куча схем термометров на AVR, но как всегда хочется чего-то своего.. Да и мозги размять тоже следует. Этот термометр был…
Просмотров: 14058

Цифровой термометр на DS18B20 (ATmega8, C) 18. 10.2009
Цифровой термометр предназначен для измерения температуры с точностью до одной десятой доли градуса Цельсия*. Цифровой термометр…
Просмотров: 5835

Регулятор оборотов 12V вентилятора на DS18B20 (ATtiny13, C) 01.07.2009
Взял все вентиляторы из своего компа и попробовал при каком напряжении они стартуют. Получилась довольно печальная картина: некоторые…
Просмотров: 12234

Многофункциональные часы-термостат с дистанционным управлением (ATmega8) 08.03.2009
Возникла у меня потребность в настольных часах-термометре, чтобы помимо времени можно было узнать температуру на улице и в доме. В…
Просмотров: 4451

Термометр — меньше не бывает (ATmega8) 18.05.2008
Предлагается схема на микроконтроллере ATMega8 для измерения температуры в диапазоне от −55° C до +127° C с точностью не хуже +-0,5° C. В…
Просмотров: 6523

Термометр с ЖКИ и датчиком DS18B20 (ATtiny15) 01. 03.2008
В технической литературе и в Интернете можно найти множество описаний и схем цифровых термометров. В большинстве конструкций…
Просмотров: 4153

Термостат (AT90S2313, C) 15.02.2008
Прибор был создан по просьбе одного знакомого для контроля температуры в комнате — включения отопителя / вентилятора при достижении…
Просмотров: 4386

Термостат на DS18B20 и ATmega8 (ATmega8, C) 27.01.2008
В схеме, можно применять светодиодные семисегментные индикаторы с общим катодом или анодом (2 прошивки). Датчик температуры DS18B20….
Просмотров: 15452

Простой термометр на DS18B20 (ATtiny2313, C) 26.01.2008
Это простой термометр на основе термо датчика DS18B20 и мк ATtiny2313 (или AT90S2313) выводящий информацию на 7-сегментный ЖКИ – модуль на основе…
Просмотров: 8168

Самое простое устройство на микроконтроллере

Микроконтроллеры / Создание устройств /

Разработка устройств на микроконтроллерах

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

До сих пор я выдавал вам общие сведения о микроконтроллерах, отрывки из документации, иногда немного говорил о программировании. Но ещё ни разу не приводил примеров устройств на микроконтроллерах. А ведь именно в этом весь смысл обучения — в создании собственных устройств.

Так что с этой статьи я начинаю исправлять положение дел, и буду рассказывать именно о создании устройств с примерами схем, программ и т.п. Рассказы будут для начинающих. Как всегда буду стараться, чтобы понятно было даже людям, далёким от электроники и программирования. И первый пример будет настолько простым, насколько это вообще возможно…

Как и любое другое устройство MCU IoT, подключенное к облаку, существует необходимый этап аутентификации / безопасности. Процесс с AVR-IoT значительно проще, чем с его эквивалентами семейства Arduino, поскольку предварительно настроенный чип безопасности (ATECC608A) предоставляет пользователям файл PUBKEY, который можно загрузить непосредственно в реестр IoT Core.Хотя для этого также можно использовать сторонние библиотеки, службы и API, это может стать проблемой при масштабировании количества устройств.

Теперь, когда ваша облачная среда полностью настроена, пора настроить прошивку для вашего устройства. Atmel START можно использовать для создания нестандартной прошивки с нуля или изменения существующих программ в соответствии с вашими потребностями. В этом примере мы изменим «узел датчика WG AVR-IoT», который является базовой программой, установленной на каждом устройстве AVR-IoT.

Здесь мы внесем изменения в разделы «Cloud Configuration» и «WLAN Configuration», чтобы они соответствовали проекту GCP, который мы создали ранее. Мы также изменим сеть Wi-Fi, в которой находится устройство. Вы также можете внести дополнительные изменения, такие как конфигурация контактов / часов или включение промежуточного программного обеспечения / драйверов на этой платформе.

Когда вы будете готовы вникнуть глубже, экспортируйте проект и откройте его в Atmel Studio (в настоящее время только для Windows).Если вы решили добавить дополнительные датчики, обязательно добавьте соответствующие библиотеки и соответствующим образом измените функцию sendToCloud . Графики пользовательского интерфейса будут обновляться динамически, чтобы соответствовать любому количеству датчиков, поэтому нет необходимости вносить какие-либо изменения в облако.

Наконец, создайте свое решение и поместите сгенерированный файл . hex на свой диск CURIOSITY. В случае успеха вы должны увидеть потоки данных в реальном времени в новое приложение Firebase по адресу [yourprojectid] .firebaseapp.com/device/.

Если вы хотите создать что-то большее, наша команда может помочь вам преобразовать ваши проекты в полноценные решения.

Denon AVR control? — Устройства

Я не думаю, что это работает с приемниками HEOS (у меня нет HEOS), но отлично работает с более старыми приемниками.
Не моя работа Я только что сконвертировал из SmartThings.

  / **
 * Сетевой приемник Denon
 * На основе приемника Denon / Marantz Кристофера Кубицки
 * Драйвер SmartThings для подключения сетевого приемника Denon к SmartThings
 * Протестировано с AVR-S710W (входы game1 и game2 недоступны), AVR 1912

ТЕЗЕДНЫЕ МОДЕЛИ ДЕНОНА
    ModelId
EnModelUnknown, // (0)
EnModelAVRX10, // (1)
EnModelAVRX20, // (2)
EnModelAVRX30, // (3)
EnModelAVRX40, // (4)
EnModelAVRX50, // (5)
EnModelAVRX70, // (6)
EnModelNR15, // (7)
EnModelNR16, // (8)
EnModelSR50, // (9)
EnModelSR60, // (10)
EnModelSR70, // (11)
EnModelAV77, // (12)
EnModelAV88, // (13)
* /

метаданные {
    определение (имя: "Denon AVR", пространство имен: "SB",
        автор: "Бобби Добреску") {
        возможность "Актуатор"
        возможность «Переключатель»
        возможность "Опрос"
        возможность «Переключить уровень»
        возможность "Музыкальный проигрыватель"
        
        атрибут «без звука», «строка»
        атрибут "ввод", "строка"
        атрибут "cbl", "строка"
        атрибут "телевизор", "строка"
атрибут "dvd", "строка"
атрибут "mp", "строка"
атрибут "bt", "строка"
атрибут "игра", "строка"
атрибут "sMovie", "строка"
атрибут "sMusic", "строка"
атрибут "sPure", "строка"
атрибут «q1», «строка»
атрибут «q2», «строка»
атрибут "q3", "строка"
атрибут «q4», «строка»
атрибут "зона2", "строка"



        команда "отключить звук"
        команда "включить звук"
        команда "toggleMute"
        команда "inputSelect", ["строка"]
        команда "inputNext"
команда "cbl"
команда "тв"
команда "bd"
команда "dvd"
команда "mp"
команда "bt"
команда "игра"
команда "sMovie"
команда "sMusic"
команда "sPure"
команда "q1"
команда "q2"
команда "q3"
команда "q4"
команда "sPure"
команда "z2on"
команда "z2off"

        }


предпочтения {
    input ("destIp", "текст", заголовок: "IP", описание: "IP-адрес устройства")
    input ("destPort", "номер", заголовок: "Порт", описание: "Порт, к которому вы хотите подключиться", defaultValue: 80)
input (заголовок: «Версия Denon AVR: $ {getVersionTxt ()}», описание: null, тип: «параграф»)
}


    simulator {
        // TODO-: определить здесь статус и ответные сообщения
    }

    // плитки {
плитки (масштаб: 2) {
multiAttributeTile (имя: "multiAVR", тип: "mediaPlayer", ширина: 6, высота: 4) {
           tileAttribute ("устройство. status ", ключ:" PRIMARY_CONTROL ") {
            attributeState ("приостановлено", метка: "Приостановлено", backgroundColor: "# 53a7c0", defaultState: true)
attributeState ("играет", метка: 'Играет', backgroundColor: "# 79b821")
        }
            tileAttribute ("device.status", ключ: "MEDIA_STATUS") {
            attributeState "играет", метка: '$ {name}', действие: "switch.off"
                attributeState "приостановлено", метка: '$ {name}', действие: "switch.on"
}
            tileAttribute ("устройство.level ", ключ:" SLIDER_CONTROL ") {
           attributeState ("уровень", действие: "setLevel")
                }
            tileAttribute ("device.mute", ключ: "MEDIA_MUTED") {
            attributeState ("отключено", действие: "отключено", nextState: "отключено")
            attributeState ("отключен", действие: "включить звук", nextState: "отключен")
        }
        }
        standardTile ("input1", "device.cbl", width: 2, height: 2, decoration: "flat") {
            состояние «ВЫКЛ. », метка: «Кабель», действие: «cbl», значок: «ул.Electronics.electronics3 ", backgroundColor:" #FFFFFF ", nextState:" ON "
            состояние "ON", метка: 'Cable', действие: "cbl", значок: "st.Electronics.electronics3", backgroundColor: "# 53a7c0", nextState: "OFF"
            }
        standardTile ("input2", "device.tv", width: 2, height: 2, decoration: "flat") {
        состояние "ВЫКЛ", метка: 'TV', действие: "tv", значок: "st.Electronics.electronics18", backgroundColor: "# FFFFFF", nextState: "ON"
             состояние "ВКЛ", метка: 'ТВ', действие: "телевизор", значок: "ул.Electronics.electronics18 ", backgroundColor:" # 53a7c0 ", nextState:" OFF "
            }
        standardTile ("input3", "device.bd", width: 2, height: 2, decoration: "flat") {
        состояние "ВЫКЛ", метка: 'Blu-ray', действие: "bd", значок: "st.Electronics.electronics8", цвет фона: "#FFFFFF", nextState: "ВКЛ"
            состояние "ON", метка: 'Blu-ray', действие: "bd", значок: "st.Electronics.electronics8", backgroundColor: "# 53a7c0", nextState: "OFF"
        }
        standardTile ("input4", "устройство. dvd ", ширина: 2, высота: 2, оформление:" плоский ") {
        состояние "ВЫКЛ", метка: 'Chromcast', действие: "dvd", значок: "st.Electronics.electronics14", backgroundColor: "#FFFFFF", nextState: "ON"
            состояние "ON", метка: 'Chromcast', действие: "dvd", значок: "st.Electronics.electronics14", backgroundColor: "# 53a7c0", nextState: "OFF"
        }
standardTile ("input5", "device.mp", width: 2, height: 2, decoration: "flat") {
        состояние «ВЫКЛ.», метка: «Amazon TV», действие: «мп», значок: «ст.Электроника.electronics9 ", backgroundColor:" #FFFFFF ", nextState:" ON "
            состояние "ON", метка: 'Amazon TV', действие: "mp", значок: "st.Electronics.electronics9", backgroundColor: "# 53a7c0", nextState: "OFF"
}
        standardTile ("input6", "device.bt", width: 2, height: 2, decoration: "flat") {
        состояние «ВЫКЛ.», метка: «Bluetooth», действие: «bt», значок: «st.Entertainment.entertainment2», цвет фона: «#FFFFFF», nextState: «ВКЛ»
            состояние «ВКЛ», метка: «Bluetooth», действие: «bt», значок: «ул. Entertainment.entertainment2 ", backgroundColor:" # 53a7c0 ", nextState:" OFF "
}
        standardTile ("input7", "device.game", width: 2, height: 2, decoration: "flat") {
        состояние «ВЫКЛ», метка: «Игра», действие: «игра», значок: «st.Electronics.electronics5», цвет фона: «#FFFFFF», nextState: «ВКЛ»
            состояние «ВКЛ», метка: «Игра», действие: «игра», значок: «st.Electronics.electronics5», backgroundColor: «# 53a7c0», nextState: «ВЫКЛ»
}
standardTile ("input10", "устройство.звук ", ширина: 4, высота: 2, оформление:" плоский ") {
        состояние «sMusic», метка: '$ {currentValue}', действие: «sMusic», значок: «st.Entertainment.entertainment3», backgroundColor: «#FFFFFF», nextState: «sMovie»
состояние «sMovie», метка: '$ {currentValue}', действие: «sMovie», значок: «st.Entertainment.entertainment9», backgroundColor: «#FFFFFF», nextState: «sGame»
состояние "sGame", метка: '$ {currentValue}', действие: "sGame", значок: "st.Electronics.electronics6", backgroundColor: "#FFFFFF", nextState: "sPure"
состояние «sPure», метка: '$ {currentValue}', действие: «sPure», значок: «st. Entertainment.entertainment15 ", backgroundColor:" #FFFFFF ", nextState:" sMusic "
            }
        standardTile ("input11", "device.q1", width: 1, height: 1, decoration: "flat") {
        состояние «ВЫКЛ.», метка: «Быстрый 1», действие: «q1», backgroundColor: «# 53a7c0», nextState: «ON» // значок: «st.Electronics.electronics5»,
            состояние "ВКЛ", метка: 'Быстрый 1', действие: "q1", backgroundColor: "# 79b821", nextState: "ВЫКЛ" //, значок: "st.Electronics.electronics5"
}
        standardTile ("input12", "device.q2 ", ширина: 1, высота: 1, оформление:" плоский ") {
        состояние "ВЫКЛ", метка: 'Quick 2', действие: "q2", backgroundColor: "# 53a7c0", nextState: "ON" //, значок: "st.Electronics.electronics5"
            состояние "ON", метка: 'Quick 2', действие: "q2", backgroundColor: "# 79b821", nextState: "OFF"
}
        standardTile ("input13", "device.q3", width: 1, height: 1, decoration: "flat") {
        состояние «ВЫКЛ», метка: «Быстрый 3», действие: «q3», backgroundColor: «# 53a7c0», nextState: «ВКЛ»
            состояние «ВКЛ», метка: «Быстрый 3», действие: «q3», backgroundColor: «# 79b821», nextState: «ВЫКЛ»
}
        standardTile ("input14", "device. q4 ", ширина: 1, высота: 1, оформление:" плоский ") {
        состояние «ВЫКЛ», метка: «Быстрый 4», действие: «q4», backgroundColor: «# 53a7c0», nextState: «ВКЛ»
            состояние "ON", метка: 'Quick 4', действие: "q4", backgroundColor: "# 79b821", nextState: "OFF"
}
standardTile ("zone2", "device.zone2", width: 1, height: 1, inactiveLabel: false, decoration: "flat") {
состояние "ВЫКЛ", метка: "Зона 2", действие: "z2on", backgroundColor: "# 53a7c0", nextState: "on"
состояние "ON", метка: "Zone 2", действие: "z2off", backgroundColor: "# 79b821", nextState: "off"
        }
standardTile ("опрос", "устройство.опрос ", ширина: 1, высота: 1, оформление:" плоский ") {
            состояние "опрос", метка: "", действие: "polling.poll", значок: "st.secondary.refresh", backgroundColor: "#FFFFFF"
        }
основной "мультиАВР"
        подробности ([«multiAVR», «input1», «input2», «input3», «input4», «input5», «input6», «input7», «input10», «input11», «input12», «input13») , "input14", "zone2", "poll"])
    }
}
def parse (описание строки) {
//log. debug "Разбор '$ {description}'"
 def map = stringToMap (описание)
    если (! map.body || map.body == "DQo =") {return}
def body = новая строка (map.body.decodeBase64 ())
def statusrsp = новый XmlSlurper (). parseText (тело)
// СОСТОЯНИЕ ПИТАНИЯ
    def power = statusrsp.Power.value.text ()
if (power == "ON") {
    sendEvent (имя: «статус», значение: «играет»)
    }
    if (power! = "" && power! = "ON") {
    sendEvent (имя: «статус», значение: «приостановлено»)
}
// СТАТУС ОБЪЕМА
    def muteLevel = statusrsp.Mute.value.text ()
    if (muteLevel == "on") {
    sendEvent (имя: «без звука», значение: «без звука»)
}
    if (muteLevel! = "" && muteLevel! = "on") {
sendEvent (имя: «без звука», значение: «без звука»)
    }
    если (statusrsp.MasterVolume.value.text ()) {
    def int volLevel = (int) statusrsp.MasterVolume.value.toFloat ()?: -40.0
        volLevel = (volLevel + 80)
        log.debug "Скорректированный объем составляет $ {volLevel}"
        def int curLevel = 36
        пытаться {
        curLevel = device. currentValue ("уровень")
        log.debug "Текущий объем: $ {curLevel}"
        } catch (NumberFormatException nfe) {
        curLevel = 36
        }
        if (curLevel! = volLevel) {
    sendEvent (имя: "уровень", значение: volLevel)
        }
    }
// СТАТУС ВВОДА
def inputCanonical = statusrsp.InputFuncSelect.value.text ()
            sendEvent (имя: "вход", значение: inputCanonical)
log.debug "Текущий ввод: $ {inputCanonical}"
    
    def inputSurr = statusrsp.selectSurround.value.text ()
    sendEvent (имя: "звук", значение: inputSurr)
log.debug "Текущее окружение: $ {inputSurr}"
    def inputZone = statusrsp.RenameZone.value.text ()
    // sendEvent (имя: "звук", значение: inputSurr)
log.debug "Текущая активная зона: $ {inputZone}"
}
    // ДЕЙСТВИЯ ПЛИТКИ
    def setLevel (val) {
        sendEvent (имя: «без звука», значение: «без звука»)
        sendEvent (имя: "уровень", значение: val)
        def int scaledVal = val - 80
        запрос ("cmd0 = PutMasterVolumeSet% 2F $ scaledVal")
    }
    def on () {
        sendEvent (имя: «статус», значение: «играет»)
        запрос ('cmd0 = PutZone_OnOff% 2FON')
    }
    def off () {
        sendEvent (имя: «статус», значение: «приостановлено»)
        запрос ('cmd0 = PutZone_OnOff% 2FOFF')
    }
    def z2on () {
        бревно. отладка «Включение зоны 2»
        sendEvent (имя: «зона2», значение: «ВКЛ»)
        request2 ('cmd0 = PutZone_OnOff% 2FON')
        }
    def z2off () {
        log.debug "Выключение Зоны 2"
        sendEvent (имя: «зона2», значение: «ВЫКЛ»)
        request2 ('cmd0 = PutZone_OnOff% 2FOFF')
        }
    def mute () {
        sendEvent (имя: «без звука», значение: «без звука»)
        запрос ('cmd0 = PutVolumeMute% 2FON')
    }
    def unmute () {
        sendEvent (имя: «без звука», значение: «без звука»)
        запрос ('cmd0 = PutVolumeMute% 2FOFF')
    }
    def toggleMute () {
        если (устройство.currentValue ("без звука") == "без звука") {включить ()}
        иначе {mute ()}
    }
    def cbl () {
        def cmd = "SAT / CBL"
        log.debug "Установка входных данных для $ {cmd}"
        syncTiles (cmd)
        запрос ("cmd0 = PutZone_InputFunction% 2F" + cmd)
        }
    def tv () {
        def cmd = "ТВ"
        log.debug "Установка входных данных для $ {cmd}"
        syncTiles (cmd)
        запрос ("cmd0 = PutZone_InputFunction% 2F" + cmd)
        }
    def bd () {
        def cmd = "BD"
        log. debug "Установка входных данных для $ {cmd}"
        syncTiles (cmd)
        запрос ("cmd0 = PutZone_InputFunction% 2F" + cmd)
        }
    def dvd () {
        def cmd = "DVD"
        бревно.отладка "Установка ввода для $ {cmd}"
        syncTiles (cmd)
        запрос ("cmd0 = PutZone_InputFunction% 2F" + cmd)
        }
    def mp () {
        def cmd = "MPLAY"
        log.debug "Установка ввода для '$ ​​{cmd}'"
        syncTiles (cmd)
        запрос ("cmd0 = PutZone_InputFunction% 2F" + cmd)
        }
    def bt () {
        def cmd = "BT"
        log.debug "Установка ввода для '$ ​​{cmd}'"
        syncTiles (cmd)
        запрос ("cmd0 = PutZone_InputFunction% 2F" + cmd)
    }
    def game () {
        def cmd = "ИГРА"
        бревно.отладка "Установка ввода для '$ ​​{cmd}'"
        syncTiles (cmd)
        запрос ("cmd0 = PutZone_InputFunction% 2F" + cmd)
    }
    // ЗВУКОВЫЕ РЕЖИМЫ
    def sMusic () {
        def cmd = "МУЗЫКА"
        log.debug "Установка ввода для '$ ​​{cmd}'"
        запрос ("cmd0 = PutSurroundMode% 2F" + cmd)
    }
    def sMovie () {
        def cmd = "ФИЛЬМ"
        log. debug "Установка ввода для '$ ​​{cmd}'"
        запрос ("cmd0 = PutSurroundMode% 2F" + cmd)
    }
    def sGame () {
        def cmd = "ИГРА"
        log.debug "Установка ввода для '$ ​​{cmd}'"
        запрос ("cmd0 = PutSurroundMode% 2F" + cmd)
    }
    def sPure () {
        def cmd = "ЧИСТЫЙ ПРЯМОЙ"
        бревно.отладка "Установка ввода для '$ ​​{cmd}'"
        запрос ("cmd0 = PutZone_InputFunction% 2F" + cmd)
    }
    // БЫСТРЫЕ РЕЖИМЫ
    def q1 () {
        def cmd = "1"
        log.debug "Установка быстрого ввода для '$ ​​{cmd}'"
        syncQTiles (cmd)
        запрос ("cmd0 = PutUserMode% 2FQuick% 2F" + cmd)
    }
    def q2 () {
        def cmd = "2"
        log.debug "Установка быстрого ввода для '$ ​​{cmd}'"
        syncQTiles (cmd)
        запрос ("cmd0 = PutSurroundMode% 2F" + cmd)
    }
    def q3 () {
        def cmd = "3"
        log.debug "Установка быстрого ввода для '$ ​​{cmd}'"
        syncQTiles (cmd)
        запрос ("cmd0 = PutSurroundMode% 2F" + cmd)
    }
    def q4 () {
        def cmd = "4"
        бревно. отладка "Установка быстрого ввода для '$ ​​{cmd}'"
        syncQTiles (cmd)
        запрос ("cmd0 = PutZone_InputFunction% 2F" + cmd)
    }
    def poll () {
        //log.debug "Запрос на опрос"
        обновить ()
    }
    def syncTiles (cmd) {
        if (cmd == "SAT / CBL") sendEvent (имя: "cbl", значение: "ON")
            иначе sendEvent (имя: "cbl", значение: "ВЫКЛ")
        if (cmd == "TV") sendEvent (имя: "tv", значение: "ON")
            иначе sendEvent (имя: "tv", значение: "ВЫКЛ")
        if (cmd == "BD") sendEvent (имя: "bd", значение: "ON")
            иначе sendEvent (имя: "bd", значение: "ВЫКЛ")
        if (cmd == "DVD") sendEvent (имя: "dvd", значение: "ON")
            иначе sendEvent (имя: "dvd", значение: "ВЫКЛ")
        if (cmd == "MPLAY") sendEvent (имя: "mp", значение: "ON")
            иначе sendEvent (имя: "mp", значение: "OFF")
        if (cmd == "BT") sendEvent (имя: "bt", значение: "ON")
            иначе sendEvent (имя: "bt", значение: "ВЫКЛ")
        if (cmd == "GAME") sendEvent (имя: "игра", значение: "ВКЛ")
            иначе sendEvent (имя: "игра", значение: "ВЫКЛ")
    }
    def syncQTiles (cmd) {
        if (cmd == "1") sendEvent (имя: "q1", значение: "ON")
            иначе sendEvent (имя: "q1", значение: "ВЫКЛ")
        if (cmd == "2") sendEvent (имя: "q2", значение: "ON")
            иначе sendEvent (имя: "q2", значение: "ВЫКЛ")
        if (cmd == "3") sendEvent (имя: "q3", значение: "ON")
            иначе sendEvent (имя: "q3", значение: "ВЫКЛ")
        if (cmd == "4") sendEvent (имя: "q4", значение: "ON")
            иначе sendEvent (имя: "q4", значение: "ВЫКЛ")
    }
def refresh () {
        def hosthex = convertIPtoHex (destIp)
        def porthex = convertPortToHex (destPort)
        устройство. deviceNetworkId = "$ hosthex: $ porthex"

        def hubAction = новый hubitat.device.HubAction (
                'метод': 'ПОЛУЧИТЬ',
                'путь': "/goform/formMainZone_MainZoneXml.xml",
                'заголовки': [ХОСТ: "$ destIp: $ destPort"]
            )
        hubAction
    }
    def request (body) {
        def hosthex = convertIPtoHex (destIp)
        def porthex = convertPortToHex (destPort)
        device.deviceNetworkId = "$ hosthex: $ porthex"

        def hubAction = новый hubitat.device.HubAction (
                'метод': 'POST',
                'путь': "/MainZone/index.put.asp",
                'тело': тело,
                'заголовки': [ХОСТ: "$ destIp: $ destPort"]
            )

        hubAction
    }
    def request2 (body) {
        def hosthex = convertIPtoHex (destIp)
        def porthex = convertPortToHex (destPort)
        device.deviceNetworkId = "$ hosthex: $ porthex"

        def hubAction = новый hubitat.device.HubAction (
                'метод': 'POST',
                'путь': "/ Zone2 / index. put.asp ",
                'тело': тело,
                'заголовки': [ХОСТ: "$ destIp: $ destPort"]
            )

        hubAction
    }
    
    
    private String convertIPtoHex (ipAddress) {
        Строка hex = ipAddress.tokenize ('.') .Collect {String.format ('% 02X', it.toInteger ())} .join ()
        вернуть шестнадцатеричный
    }
    private String convertPortToHex (порт) {
        Строка hexport = port.toString (). Format ('% 04X', port.toInteger ())
        вернуть гекпорт
    }
    def getVersionTxt () {
        возврат "2.1 "
    }
  

: Определения ввода-вывода для конкретного устройства AVR

Этот файл заголовка включает соответствующие определения ввода-вывода для устройства, указанного в параметре командной строки компилятора -mmcu = . Это делается путем перенаправления в соответствующий файл XXXX .h> , который никогда не следует включать напрямую. Некоторые имена регистров, общие для всех устройств AVR, определены непосредственно в h> , который включен в , но большая часть деталей берется из соответствующего включаемого файла.

Обратите внимание, что этот файл всегда включает следующие файлы:

#include

#include

#include

#include

См. : Регистры специальных функций для получения дополнительных сведений об этом файле заголовка.

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

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

Наконец, определены следующие макросы:

  • RAMEND
    Последний адрес ОЗУ на кристалле.
  • XRAMEND
    Последнее возможное адресуемое место в ОЗУ. Это равно RAMEND для устройств, которые не поддерживают внешнюю RAM.Для устройств, поддерживающих внешнюю RAM, это будет больше RAMEND.
  • E2END
    Последний адрес EEPROM.
  • FLASHEND
    Последний адрес байта в программном пространстве Flash.
  • SPM_PAGESIZE
    Для устройств с поддержкой загрузчика, размер страницы флэш-памяти (в байтах), который будет использоваться для инструкции SPM .
  • E2PAGESIZE
    Размер страницы EEPROM.
#define _PROTECTED_WRITE ( рег,
значение
)

Записать значение значение в регистр ввода-вывода , регистр , который защищен механизмом защиты от изменения конфигурации Xmega (CCP). Это реализует синхронизированную последовательность, которая требуется для CCP.

Пример изменения частоты процессора:

Пример использования двухпроводного интерфейса (TWI)

Некоторые новые устройства серии ATmega содержат встроенную поддержку для сопряжения микроконтроллера с двухпроводной шиной, называемой TWI. По сути, это то же самое, что Philips называет I2C, но в документации Atmel этого термина избегают из-за проблем с патентованием.

Дополнительную документацию см .:

http: // www.nxp.com/documents/user_manual/UM10204.pdf

Двухпроводной интерфейс состоит из двух сигнальных линий с именами SDA (последовательные данные) и SCL (последовательные часы) (плюс, конечно, линия заземления). Все устройства, участвующие в шине, соединены вместе с помощью схемы драйвера с открытым стоком, поэтому провода должны быть заделаны соответствующими подтягивающими резисторами. Подтяжки должны быть достаточно маленькими, чтобы перезарядить емкость линии за достаточно короткое время по сравнению с желаемой максимальной тактовой частотой, но достаточно большими, чтобы все драйверы не были перегружены. В таблице данных есть формулы, которые помогают выбрать подтягивания.

Устройства могут действовать как ведущие для шины (т.е. они инициируют передачу) или как ведомые (они действуют только при вызове ведущим). Шина способна работать с несколькими ведущими, и конкретная реализация устройства может в разное время действовать как ведущее или ведомое устройство. Устройства адресуются с использованием 7-битного адреса (согласованного Philips), передаваемого в качестве первого байта после так называемого условия запуска. Младший бит этого байта равен R / ~ W, т.е.е. он определяет, должен ли запрос к ведомому устройству считывать или записывать данные во время следующих циклов. (Существует также возможность использовать устройства, использующие 10-битные адреса, но это не рассматривается в данном примере.)

Аппаратное обеспечение ATmega TWI поддерживает работу как ведущего, так и ведомого устройства. Этот пример только демонстрирует, как использовать микроконтроллер AVR в качестве мастера TWI. Реализация остается простой, чтобы сконцентрироваться на шагах, которые требуются для разговора с ведомым устройством TWI, поэтому вся обработка выполняется в режиме опроса, ожидая, пока интерфейс TWI укажет, что следующий шаг обработки должен быть выполнен (путем установки параметра Бит прерывания TWINT).Если желательно, чтобы вся связь TWI происходила в «фоновом режиме», все это может быть реализовано способом, управляемым прерываниями, когда только условие запуска должно запускаться извне программы обработки прерывания.

Существует множество доступных ведомых устройств, которые могут быть подключены к шине TWI. Для целей этого примера было выбрано устройство EEPROM из отраслевого стандарта серии 24C xx (где xx может быть одним из 01 , 02 , 04 , 08 , или 16 ), которые можно приобрести у различных поставщиков.Выбор был почти произвольным, в основном вызванным тем фактом, что устройство EEPROM разговаривает в обоих направлениях, считывая и записывая ведомое устройство, поэтому в примере будут продемонстрированы детали обоих.

Обычно, вероятно, нет особой необходимости добавлять EEPROM в систему ATmega таким образом: наименьшее возможное устройство AVR, которое предлагает аппаратную поддержку TWI, - это ATmega8, который поставляется с 512 байтами EEPROM, что эквивалентно устройству 24C04. ATmega128 уже имеет в два раза больше EEPROM, чем 24C16.Одним исключением может быть использование съемного устройства EEPROM с внешним подключением; е. грамм. SDRAM Память ПК поставляется со встроенным TWI EEPROM, который содержит информацию о конфигурации RAM.

Исходный файл: twitest.c

Примечание [1]

Заголовочный файл содержит некоторые макроопределения для символьных констант, используемых в регистре состояния TWI. Эти определения соответствуют именам, используемым в таблице данных Atmel, за исключением того, что все имена имеют префикс TW_ .

Примечание [2]

Часы используются в вычислениях таймера, выполняемых компилятором, для скорости передачи данных UART и тактовой частоты TWI.

Примечание [3]

Адрес, назначенный для 24Cxx EEPROM, состоит из 1010 в старших четырех битах. Следующие три бита обычно доступны как подчиненные подадреса, что позволяет управлять более чем одним устройством одного и того же типа на одной шине, где фактический подадрес, используемый для каждого устройства, настраивается с помощью аппаратной привязки.Однако, поскольку следующий пакет данных после выбора устройства допускает только 8 битов, которые используются в качестве адреса EEPROM, устройства, которым требуется более 8 бит адреса (24C04 и выше), «крадут» биты подадреса и используют их для адреса ячейки EEPROM. биты с 9 по 11 по мере необходимости. В этом примере просто предполагается, что все биты подадреса равны 0 для меньших устройств, поэтому входы E0, E1 и E2 24Cxx должны быть заземлены.

Примечание [3a]

EEPROM типа 24C32 и выше больше не могут быть адресованы даже с помощью трюка с битами подадреса. Таким образом, они требуют, чтобы старшие биты адреса отправлялись по шине отдельно. При активации определения WORD_ADDRESS_16BIT алгоритм реализует передачу байта вспомогательного адреса.

Примечание [4]

Для медленных часов включите умножитель тактовой частоты 2 x U [S] ART, чтобы уменьшить ошибку скорости передачи. Это обеспечит связь 9600 Бод с использованием стандартного RC-генератора с калиброванной частотой 1 МГц. См. Также таблицы скорости передачи в таблицах данных.

Примечание [5]

В таблице данных объясняется, почему минимальное значение TWBR, равное 10, должно поддерживаться при работе в ведущем режиме.Таким образом, для системных часов ниже 3,6 МГц мы не можем запустить шину с заданной тактовой частотой 100 кГц, но должны соответственно замедлиться.

Примечание [6]

Эта функция используется стандартными средствами вывода, которые используются в этом примере для отладки и демонстрационных целей.

Примечание [7]

Чтобы сократить объем данных, передаваемых по шине TWI, 24Cxx EEPROM поддерживают несколько байтов данных, передаваемых в рамках одного запроса, поддерживая внутренний счетчик адреса, который обновляется после каждого байта данных. перенесен успешно.При чтении данных один запрос может при желании прочитать всю память устройства (счетчик будет циклически повторяться и начинать с 0 при достижении конца устройства).

Примечание [8]

При чтении EEPROM первый выбор устройства должен быть сделан с намерением записи (бит R / ~ W установлен в 0, что указывает на операцию записи), чтобы передать адрес EEPROM для начала чтения. из. Это называется режимом главного передатчика . Каждое завершение определенного шага в TWI-коммуникации обозначается установленным битом TWINT в TWCR.(Прерывание будет сгенерировано, если оно разрешено.) После выполнения любых действий, которые необходимы для следующего шага связи, условие прерывания должно быть вручную очищено с помощью установки бита TWINT. В отличие от многих других источников прерываний, это может потребоваться даже при использовании настоящей процедуры прерывания, поскольку, как только TWINT будет повторно подтвержден, начнется следующая транзакция шины.

Примечание [9]

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

Примечание [10]

Затем подчиненное устройство будет повторно выбрано (с использованием так называемого условия повторного запуска, которое призвано гарантировать, что арбитраж шины останется на текущем мастере) с использованием того же подчиненного устройства. адрес (SLA), но на этот раз с намерением чтения (бит R / ~ W установлен в 1), чтобы запросить ведомое устройство начать передачу данных от ведомого к ведущему в следующем пакете.

Примечание [11]

Если устройство EEPROM все еще занято записью одной или нескольких ячеек после предыдущего запроса на запись, оно просто оставит свои драйверы интерфейса шины с высоким импедансом и не будет реагировать на выбор ни в каком способ вообще. Мастер, выбирающий устройство, увидит высокий уровень в SDA после передачи пакета SLA + R / W в качестве NACK на свой запрос выбора. Таким образом, процесс выбора просто начинается заново (фактически вызывая условие повторного запуска ), пока устройство в конечном итоге не ответит.Эта процедура опроса рекомендуется в таблице данных 24Cxx, чтобы минимизировать время ожидания при записи. Обратите внимание, что если устройство сломано и никогда не отвечает на выбор (например, поскольку его вообще нет), это вызовет бесконечный цикл. Таким образом, максимальное количество итераций, выполняемых до тех пор, пока устройство не будет объявлено, что оно вообще не отвечает, и не будет возвращена ошибка, будет ограничено значением MAX_ITER.

Примечание [12]

Это называется режимом ведущего приемника : ведущее устройство шины по-прежнему обеспечивает синхронизацию SCL, но ведомое устройство управляет линией SDA с соответствующими данными.После 8 бит данных мастер отвечает битом ACK (низкий уровень SDA), чтобы запросить другую передачу данных от ведомого, или может оставить линию SDA на высоком уровне (NACK), указывая ведомому устройству, что он собирается остановиться. перевод сейчас. Подтверждение ACK обрабатывается установкой бита TWEA в TWCR при запуске текущей передачи.

Примечание [13]

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

Примечание [14]

За исключением случая потери арбитража, все транзакции шины должны быть должным образом завершены мастером, инициирующим условие остановки.

Примечание [15]

Запись в устройство EEPROM проще, чем чтение, поскольку требуется только передача в режиме ведущего передатчика. Обратите внимание, что первый пакет после выбора SLA + W всегда считается адресом EEPROM для следующей операции.(Этот пакет точно такой же, как и тот, который был отправлен перед началом чтения устройства. ) В случае, если передача в режиме ведущего передатчика будет отправлять более одного пакета данных, все последующие пакеты будут считаться байтами данных для записи в указанном адрес. Указатель внутреннего адреса будет увеличиваться после каждой операции записи.

Примечание [16]

Устройства 24Cxx могут стать защищенными от записи, установив на их вывод ~ WC высокий логический уровень. (Оставление его неподключенным явно разрешено и составляет низкий логический уровень, т.е.е. без защиты от записи.) В случае устройства, защищенного от записи, все попытки передачи данных будут блокироваться устройством. Обратите внимание, что на некоторых устройствах это может не реализоваться.

многозонных устройств

многозонных устройств

Если у вас есть устройство, которое предлагает многозонную функциональность, вы можете использовать пульт Harmony на базе концентратора, чтобы создать впечатление от нескольких комнат. Например, если у вас вечеринка, вы можете использовать пульт Harmony, чтобы активировать дополнительные зоны на ресивере этой ночью и воспроизводить музыку по всему дому.

Многозонный Harmony

Пожалуйста, будьте осторожны

Каждая зона управляется собственным набором команд, чтобы контент из одной зоны не мешал воспроизведению контента в другой. Для этого каждая зона должна быть добавлена ​​как отдельное устройство в вашу учетную запись Harmony.

Добавление устройства и первой зоны

мобильный Настольный

  1. Выберите, затем Настройка Harmony> Добавить / редактировать устройства и действия> УСТРОЙСТВА .
  2. Выберите ДОБАВИТЬ УСТРОЙСТВО внизу, выберите РАЗВЛЕКАТЕЛЬНОЕ УСТРОЙСТВО и введите производителя и номер модели вашего устройства.
  3. Harmony может предоставить вам дополнительное уведомление в зависимости от введенного устройства или добавить устройство без запроса, если все в порядке.
  4. После добавления приложение Harmony проведет вас через проверку этого устройства, чтобы убедиться, что им можно правильно управлять.
  5. Это устройство будет контролировать вашу первую зону.
  1. Запустите программное обеспечение рабочего стола MyHarmony и выберите свой пульт из удаленной галереи.
  2. Затем выберите вкладку Устройства , а затем Добавить устройство .
  3. Введите производителя и номер модели устройства.
  1. Harmony может предоставить вам дополнительное уведомление в зависимости от введенного устройства или добавить устройство без запроса, если все в порядке.
  2. После добавления приложение Harmony проведет вас через проверку этого устройства, чтобы убедиться, что им можно правильно управлять.
  3. Это будет ваша первая зона.

Добавление дополнительных зон на устройство

мобильный Настольный

  1. Выберите, затем Настройка Harmony> Добавить / редактировать устройства и действия> УСТРОЙСТВА .
  2. Выберите ДОБАВИТЬ УСТРОЙСТВО внизу, выберите РАЗВЛЕКАТЕЛЬНОЕ УСТРОЙСТВО .
  3. Введите того же производителя и номер модели, на этот раз добавив «(Zone #)» в конце номера модели.Например:
    Добавление второй зоны:
    Название производителя: Denon
    Номер модели: AVR-3805 (зона 2)

    или

    Добавление 3-й зоны:
    Название производителя: Denon
    Номер модели: AVR-3805 (зона 3)

  4. Завершите добавление этого устройства в первую зону аналогичным образом.
    • Это устройство будет контролировать вашу вторую зону.
  5. Повторите эти шаги для управления дополнительными зонами, каждый раз увеличивая номер зоны для каждой доступной зоны, поддерживаемой вашим устройством.

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

  1. Запустите программное обеспечение рабочего стола MyHarmony и выберите свой пульт из удаленной галереи.
  2. Затем выберите вкладку Устройства , а затем Добавить устройство .
  3. Введите производителя и номер модели устройства.
  1. Введите того же производителя и номер модели, на этот раз добавив «(№ зоны)» в конце номера модели. Например:
    Добавление второй зоны:
    Название производителя: Denon
    Номер модели: AVR-3805 (зона 2)

    или

    Добавление 3-й зоны:
    Название производителя: Denon
    Номер модели: AVR-3805 (зона 3)

  2. Завершите добавление этого устройства в первую зону аналогичным образом.
    • Это устройство будет контролировать вашу вторую зону.
  3. Повторите эти шаги для управления дополнительными зонами, каждый раз увеличивая номер зоны для каждой доступной зоны, поддерживаемой вашим устройством.

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

Регулировка параметров мощности

мобильный Настольный

При переключении между процессами Harmony по умолчанию автоматически отключает все устройства, не связанные с недавно выбранным процессом. Например, при переключении с действия "Просмотр ТВ" на действие "Слушать музыку" Harmony отключит устройства, которые не используются обоими действиями (в этом примере выключатся телевизор и телеприставка).

Для одновременного запуска более одного Activity необходимо изменить настройки питания ваших устройств, чтобы они оставались включенными при переключении между Activity. Настройка устройств на то, чтобы они оставались включенными при переключении между процессами, позволит избежать нежелательного отключения питания, так что, например, как действие «Просмотр ТВ» (в гостиной), так и действие «Слушать музыку» (во внутреннем дворике) можно запускать и управлять ими одновременно.

Выполните следующие шаги для каждой из зон, добавленных в свою учетную запись MyHarmony:

  1. Выберите, затем Настройка Harmony> Добавить / редактировать устройства и действия> УСТРОЙСТВА .
  2. Выберите устройство (зону), которое вы хотите редактировать, и выберите НАСТРОЙКИ ПИТАНИЯ .
  3. Выберите УСТРОЙСТВО ВСЕГДА ВКЛЮЧЕНО, НО ВЫКЛЮЧАЙТЕ ПРИ НАЖАТИИ КНОПКИ , затем нажмите > в правом верхнем углу.
  4. На экране Как включить и выключить [имя устройства]. , нажмите > , чтобы продолжить и сохранить текущие настройки.
  5. На экране Power Settings выберите POWER ON
  6. Выберите команду питания, чтобы открыть список доступных команд.Если присутствует команда под названием « Main Zone On », выберите ее. Если такой команды нет, используйте стрелку < для возврата к предыдущему экрану и оставьте команду питания по умолчанию.
  7. Повторите те же шаги для POWER OFF , выполнив поиск и выбрав команду «Main Zone Off», если она доступна.

Ваш AV-ресивер, зона 2 (и / или другие зоны) теперь успешно настроены. Теперь вы можете управлять действиями для своих дополнительных зон одновременно.

При переключении между процессами Harmony по умолчанию автоматически отключает все устройства, не связанные с недавно выбранным процессом. Например, при переключении с действия "Просмотр ТВ" на действие "Слушать музыку" Harmony отключит устройства, которые не используются обоими действиями (в этом примере выключатся телевизор и телеприставка).

Для одновременного запуска более одного Activity необходимо изменить настройки питания ваших устройств, чтобы они оставались включенными при переключении между Activity.Настройка устройств на то, чтобы они оставались включенными при переключении между процессами, позволит избежать нежелательного отключения питания, так что, например, как действие «Просмотр ТВ» (в гостиной), так и действие «Слушать музыку» (во внутреннем дворике) можно запускать и управлять ими одновременно.

Выполните следующие шаги для каждой из зон, добавленных в свою учетную запись MyHarmony:

  1. Войдите в программное обеспечение рабочего стола MyHarmony и выберите свой пульт из удаленной галереи.
  2. Выберите вкладку Devices вместе с (Zone), для которой вы хотите изменить настройки питания.
  3. Выберите Изменить настройки устройства , затем Параметры питания , затем Далее .
  1. Выберите Я хочу, чтобы это устройство оставалось включенным при переключении действий, и выключать его только при нажатии кнопки «Выкл. » .
  2. Не забывайте синхронизировать ваш пульт при внесении изменений.

Дополнительная информация

На обзоре вы хотите:

  1. Добавьте каждую зону как отдельное устройство от основного АРН (Зона 2, Зона 3 и т. Д.)).
  2. Измените настройки питания всех устройств, чтобы они оставались включенными, пока не будет нажата кнопка OFF .
  3. Создайте занятие для каждой зоны (если зона 2 предназначена для прослушивания музыки во внутреннем дворике, создайте для нее занятие).

Примеры названий зон:

  • Зона 1
  • Зона 2
  • Зона 3
  • Патио AVR
  • AVR Подвал
  • АВР Den
  • AVR бассейн / спа

Элитный Домашний контроль Домашний хаб Центр Умная клавиатура Связь Один Умное управление Компаньон Трогать Окончательный Окончательный дом Ultimate Hub Окончательный 950 Pro 200/300/350 600/650/665/700

Выберите свой пульт

Нам необходимо знать, какой у вас тип пульта ДУ, чтобы предоставить вам правильные инструкции.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *