Устройство этой статьи является, на самом деле, не совсем новым. Оно было сделано и отлажено довольно много времени назад, но я все никак не мог выбраться набрать статью. И вот теперь, когда в разработке новые устройства с применением ZiChip, в перспективе позволяющие более гибко работать с логикой работы, у меня вообще появились сомнения по поводу необходимости публикации этой статьи. Но раз уж устройство собрано, отлажено и работает, решил его показать в блоге. Тем более будет видна разница между подобными устройствами с и без применения ZiChip. Описание будет кратким без подробностей.
Итак, устройство этой статьи является «старшим братом» подобного устройства на ATtiny13 и было создано в ответ на просьбы пользователей по расширению функционала последнего.
Новое устройство умеет:
— работать с 7-ю цифровыми и 2-мя ШИМ – выходами;
— управлять нагрузками, как с пульта, так и с нескольких клавиш на плате;
— запоминать состояние выходов в энергонезависимой памяти и восстанавливать их;
— управляться и выдавать отчеты о выполненных действиях по UART.
Конструкция устройства
В качестве основы для устройства была задействована плата сенсорного драйвера,
соответственно и схема подобная
Прошивка для микроконтроллера
099-T2313-IR-to-PIN.zip (3428 Загрузок)
099-fuse.png (4095 Загрузок)
Напоминаю:Для Algorithm Builder и UniProf галочки ставятся как на картинке.
Для PonyProg, AVR Studio, SinaProg галочки ставятся инверсно.
Как программировать микроконтроллеры читаем в FAQ.
Изучение кнопок пульта
— производится аналогично устройству на ATtiny13 – режим обучения включается по длительному зажатию кнопки пульта.
Последовательность изучения кнопок пульта следующая:
1 Увеличение H
2 Уменьшение H
3 Увеличение I
4 Уменьшение I
5 Включение/отключение A
6 Включение/отключение B
7 Включение/отключение C
8 Включение/отключение D
9 Включение/отключение E
10 Включение/отключение F
11 Включение/отключение G
12 Все выключить
13 Все включить
14 Сохранить 1
15 Восстановить 1
16 Сохранить 2
17 Восстановить 2
Если какая-либо из команд не нужна – нужно нажимать уже изученную клавишу.
Устройство имеет расширенный перечень команд и любое действие с выходами можно произвести через UART.
Настройки UART
Скорость передачи – 9600;
Количество бит данных – 8;
Бит четности – нет;
Количество стоп-бит – 1.
Действия по командам UART:
— x0 — выключение нагрузки x,
где x может быть от A до G (например «B0» — отключение второй нагрузки);
— x1 — включение нагрузки x,
где x может быть от A до G (например «C1» — включение третей нагрузки);
— Hy — изменение уровня (ШИМ) на нагрузке Н,
где y может быть (бинарное однобайтовое значение) от 0-(выключено) до 255-(максимум);
— Iy — изменение уровня (ШИМ) на нагрузке I,
где у может быть (бинарное однобайтовое значение) от 0-(выключено) до 255-(максимум);
— =0 — выключить все;
— =1 — включить все;
— [0 — запомнить состояние нагрузок в ячейку 1;
— [1 — восстановить состояние нагрузок из ячейки 1;
— {0 — запомнить состояние нагрузок в ячейку 2;
— {1 — восстановить состояние нагрузок из ячейки 2;
— ? — выдать по UART текущего состояния нагрузок
формат выданной посылки будет иметь вид «A1B0C0D0E1F0HхIх»,
где A1 — включена нагрузка A, A0 — выключена нагрузка A (и так для остальных цифровых выходов)
Hx и Ix — уровень на аналоговых выходах H и I, (x — бинарное однобайтовое значение 0-255).
При выполнении действий с пульта или кнопок, по UART выдаются коды команд:
— A — G — переключение нагрузок соответственно A – G;
— H и h – соответственно, увеличение и уменьшение аналогового канала H;
— I и i – соответственно, увеличение и уменьшение аналогового канала I;
— 1 — все включить;
— 0 — все выключить;
— s — запомнить состояние в ячейку 1;
— r — восстановить из ячейки 1;
— S — запомнить состояние в ячейку 2;
— R — восстановить из ячейки 2.
Данное устройство уже было опробовано в действии пользователем MechanicCDRR – отзывы положительные. Если решите попробовать и Вы – жду обратной связи.
Материалы читателей блога.
1 Платка от Алексея
[Загрузка не найдена]
Файлы статьи:
099-Tiny2313-IR-to-PIN-schem.zip (2708 Загрузок)
099-source-T2313-IR-to-PIN.zip (2832 Загрузки)
Это все можно будет реализовывать при помощи ZiChip. Есть в планах сделать устройство и специально под освещение.
Евгений, возможно ли сделать такой mod: ШИМ три канала для регулировки RGB, остальные выводы, включая 2,3 без защелки (нажал-1, отпустил-0.
Спасибо!!!
Хорошо — запишу себе в планы.
Отпишусь здесь когда будет готово.
устройство 099 ноги 4 5 6 11 12 13 являются кнопками нажал ВКЛ ещё раз выкл управление ( A B C D E F) ноги 14 15 16 17 18 19 являются виходами.ну и возможность управлять как по кнопкам так и через юарт а при нажатии на кнопку в юарт отправить соответствующий символ ик управление не нужно. Спасибо
То есть к 109 просто приделать 5 выходов, которые будут дублировать нажатия кнопок на матрице?
я уже думал об этом и о 109 но получается по 11 ног в 2 схемах не задействованы при этом увеличиваются и размеры и стоимость а так если вместить в одну схему 109 и 110 было бы замечательно.Если есть время помогите с прошивкой.Спасибо.
А если заюзать пару?
http://www.forum.getchip.net/viewtopic.php?f=8&t=569&p=9350#p9350
http://www.getchip.net/posts/110-modul-uart_to_pin-upravlenie-nagruzkami/
будет возможность расширения
Уважаемый GetChiper сможете помочь с прошивкой 099для меня на 5 входов и 5 выходов с выдачей отчета по юарт чтобы была возможность управлять как кнопкой без фиксации так и по юарт (ик не нужно)
Пока не смогу заняться. Разве что после праздника.
Ик мне не нужен хотелось что бы было еще управление по юарт и выдача отчета в юарт замутить к тому устройству что по ссылке или в 099 добавить 5 выходов и было б мне счастье.А Вы не могли б подправить не много прошивку для меня?Спасибо.
ик мне не нужен хотелось что бы было еще управление по юарт и выдача отчета в юарт замутить к этому устройству и было б мне счастье.А Вы не могли б подправить не много прошивку?
Может это?
http://www.forum.getchip.net/viewtopic.php?f=9&t=499
В модификациях ничего похожего не нашол можете скинуть ссилочку.
В разделе модификаций помню такое было
http://www.forum.getchip.net/viewforum.php?f=24
Уважаемий автор а можно сделать это устройство чтоб било 5 виходов 2из которих шим 5входов желательно сенсорних для управления этими виходами ( по 1 виходу на канал) +юарт без ик управления и как соединить по юарту несколько таких устройств в одну сеть чтоби пк не путал какому устройству отправлять и от какого получил инфо.Заранее спасибо.
Цифровой выход — это тот-же аналоговый, но только с возможными двумя состояниями 0 вольт и 5 вольт. Поэтому смело включайте к аналоговым входам (только вот для чего?)
Подскажите, а цифровые выходы,как их подключить к аналоговым входам чего либо ?
В последнем устройстве из модификаций ничего не подходит?
вечер добрый уважаемый GetChiper! помогите с прошивкой! хотелось бы что бы через уарт нужно было подовать значения без 1 и 0 для включения — отключения, а просто букву канала для вкл выкл! буду очень признателен!
на тини13 все работает!!! что же с тини2313? :(((
пришел вчера тини13а. сегодня попробую на нем…
На любой должен мигать
да. я открывал.. и увидел там…. блок-схемы. попробую разобраться 🙂
Еще вопросик. на другие протоколы пульта(т.е. не RC5) светодиод тоже должен мигать?
Исходник в конце статьи, но он для Билдера http://algrom.net/russian.html
и исходник как можно посмотреть? я так понимаю он на ассемблере…
@GetChiper
наверно стоит написать простенькую отладочную прошивку. пара выходов на нагрузку, кнопка для обучения пульта и несколько выходов для отладки(вкл/выкл светодиода), что бы знать что контроллер делает…
а на другие протоколы пульта светодиод тоже должен мигать?
ATtiny2313A должна работать без проблем. конструкция испытана многими читателями — проблем не было.
Если не выйдет запустить скоро будет статья с модификацией этой прошивки — может она заработает?
FUSE http://pixs.ru/showimage/Bezimyanni_9446932_13523925.png
То что прошивка для attiny2313, а у меня attiny2313a, все равно должно ведь работать?
А… Ик приемник — SIMENS619 sfh506-36
http://kazus.ru/datasheets/pdf-data/4640541/SIEMENS/SFH506-36.html
@GetChiper
Да. Вчера как раз той прошивкой и проверил МК. ИК приемник тестером проверял — напряжение падает!!!.
Прям сейчас и с компа проверил http://www.getchip.net/posts/077-zapis-signalov-ir-pulta-na-zvukovuyu-kartu/ , только вместо ИК светодиода прикрутил ИК приемник с подачей питания. Могу кстати WAV, если нужно, скинуть. Пульт Самсунг (со SmartTV). Фьюзы, сейчас скрин скину…
Ну, для начала я бы проверил рабочий ли МК. Для этого есть тестовые прошивки http://www.getchip.net/posts/022-testovaya-proshivka-dlya-avr-mikrokontrollerov-proverka-rabotosposobnosti-portov/
Если МК целый то нужно проверить TSOP. как минимум мультиметром (при нажатии на кнопки пульта напряжение на выходе должно проседать)
И еще, Фьюзы правильно прошиты?
прошу помочь…
В чем может быть проблема? как можно проверить?
@GetChiper
что то у меня все мертво…
Голубая штучка пьезоизлучатель (бузер, пищалка). Светодиод должен мигать при нажатии клавиш пульта, даже если они не изучены.
Добрый день. Вчера собрал схемку на контактной макетке. Что то ничего не заработало. Контроллер тини2313а-пу. Есть ряд вопросов:
Что делают светодиоды, в смысле, при каких событиях загораются?
Что за штучка, которая может включаться вместо первого светодиода в голубом полукружочке?
При подключении питания должен как то сигнализировать о начале работы и при работы пульта?
Жду ответа…
Пробуй http://www.forum.getchip.net/viewtopic.php?f=24&t=438 вариант 4
Здравствуйте Уважаемые Автора проекта.Огромнейшая просьба к Вам немножко переделать прошивку так чтобы при включения питания устройства включались каналы сохраненные в память 1,обучение-вывод 7,уарт-не важно,все остальное как в первой прошивке.Прошивку пришлите пожалуйста на мою почту leo0673160436@yandex.ru Огромное спасиба за Ваш проект.С ув leobalabaj.
Готовится универсальное устройство с возможностью настройки — там можно будет поменять что хочешь. Кроме того параллельно будет статья с несколькими модами на разные устройства блога — может что подойдет.
Уважаемый Евгений, огромная благодарность вам за интересный, логично и доходчиво изложенный материал. Изготовил больше половины ваших конструкций – все работают без заминки. Теперь просьба: нельзя ли изменить прошивку в данном устройстве так, чтобы четыре кнопки были без «фиксации» (защелки).Можно использовать выводы 2,3,8,9. Это необходимо для позиционирования устройства. Заранее благодарен.
Было бы отлично. Просто хотелось встроить девайс в разные устройства где нужно регулировать мощность.
Вот почитал на одном сайте, как идея:
http://avrproject.ru/publ/setevoj_dimmer_220v_na_mikrokontrollere/4-1-0-140
З.ы. не реклама)))
В принципе-то можно, но это уже будет совсем другое устройство, так как и формат выходного сигнала нужно будет поменять. Я подумаю над этим.
Интересное устройство, спасибо. Но у меня вопрос, нельзя ли было вместо нескольких портов сделать детектор нуля для полноценного использования симисторов?
Просто составляется хеш посылки (здесь по методу CRC8, в новых устройствах уже CRC16) и по этому хешу потом ведется поиск соответствия. При таком способе нет разницы какая посылка длинной и какой у нее протокол — получается всегда число одной размерности.
подскажите какой у вас алгоритм запоминания разных команд с разных пультов?я имею ввиду как вы потом их обрабатываете и идетифицируте после приема с tsop?или на емейл
Я это устройство обкатывал на платке сенсорного драйвера http://www.getchip.net/posts/060-drajjver-sensornojj-klaviatury-touch-me-na-attiny2313/
Но, по большому счету, там нечего разводить — собрал за 5 минут на макетке и готово!
Добрый вечер! Уважаемый GetChip, впервые стали получаться схемы на МК)за что Вам огромное спасибо!) А не найдётся у вас печатной платы для данного устройства?
Что значит передать по ардуино?
Как можно передалть данный код прошивки по ардуино?