Добрый день. У меня встала такая задача: управлять нагрузками с помощью пульта. Как подключать приемник, прочитать коды кнлпок, вставить их в блок программы и управлять одиночными кнопками 1, 2, и тд. я разобрался. Но у меня 20 нагрузок и соответственно нужно использовать сочетания кнопок как на телевизионном пульте(чтоб включить к примеру 13 канал нужно сначала включить клавишу 1 и через небольшую задержку клавишу 3 при этом если клавиша 13 не будет нажата включится 1-й канал). Подскажите пожалуйста как это организовать в программе флпрог. Заранее благодарен.
Управление нагрузками с ик пульта
Добавлено: 27.06.2016{, 16:47}
Oleg1345140
Самое просто что приходит в голову это всегда набирать все команды двумя цифрами 01,02,03...... Или использовать таймер и компоратор
Управление нагрузками с ик пульта
Добавлено: 27.06.2016{, 18:28}
slavas
На пультах бывают кнопки +10
Управление нагрузками с ик пульта
Добавлено: 27.06.2016{, 20:41}
Oleg1345140
slavas писал(а):На пультах бывают кнопки +10
Возможно пульт уже имеется или ограничен размер.
Управление нагрузками с ик пульта
Добавлено: 27.06.2016{, 22:07}
alex555
Фото пульта
Управление нагрузками с ик пульта
Добавлено: 27.06.2016{, 22:26}
Oleg1345140
кнопки * или # задействованы?
Управление нагрузками с ик пульта
Добавлено: 27.06.2016{, 23:02}
alex555
Незадействованы
Управление нагрузками с ик пульта
Добавлено: 27.06.2016{, 23:17}
Noname
Отправку команды реализуйте после кнопки "ОК". То есть чтобы включить 13 канал надо нажать "1" ,потом "3" ,потом "ОК". А чтобы 7 канал- "7",потом" ОК".
Управление нагрузками с ик пульта
Добавлено: 28.06.2016{, 09:26}
Oleg1345140
Или использовать */# для добавления десятка (позволит уменьшить число нажимаемых кнопок на 1)
Управление нагрузками с ик пульта
Добавлено: 28.06.2016{, 11:30}
slavas
ну так я об этом сразу сказал.
Управление нагрузками с ик пульта
Добавлено: 28.06.2016{, 12:30}
Олег
Если делать как в телевизоре, то у меня получилась примерно такая конструкция, может и проще можно, но на первый взгляд получается так:
При первом нажптии включается таймер, в течении которого можно нажать вторую кнопку, при каждом нажатии в переменную Номер канала добавится еще одна цифра.
По истечении времени таймера значение переменной Номер канала запишется в переменную Передача номера, вот с этой переменой дальше и работать.
Можно преобразовать в integer и сравнивать компараторами.
Не проверял, просто схематический набросок.
Управление нагрузками с ик пульта
Добавлено: 28.06.2016{, 13:52}
Oleg1345140
можно так, единственное насчет преобразователя из числа в бит не уверен, нужно проверить.
Добавлено (28.06.2016, 22:24)
---------------------------------------------
Скетч можно скачать здесь.
Управление нагрузками с ик пульта
Добавлено: 30.06.2016{, 01:12}
alex555
Мой вариант наверное самый громоздкий. Там добавлена резервная кнопка(включает все) и сдвиговые регистры 74HC595
Добавлено (30.06.2016, 01:12)
---------------------------------------------
Только в моем варианте нужно подтверждать клавишей "ок"
Управление нагрузками с ик пульта
Добавлено: 30.06.2016{, 05:57}
Oleg1345140
На будущее, может быть полезно у некоторых блоков (в том числе и логические блоки и/или) можно увеличивать число входов что бы не городить лесенку из них
Управление нагрузками с ик пульта
Добавлено: 30.06.2016{, 09:37}
alex555
Спасибо. Теперь буду знать.
Добавлено (30.06.2016, 09:37)
---------------------------------------------
Честно говоря чать "кода" я подсматрел у вас Олег в сообщении на одной из веток форума
Управление нагрузками с ик пульта
Добавлено: 30.06.2016{, 10:04}
Oleg1345140
alex555 писал(а):Честно говоря чать "кода" я подсматрел у вас Олег в сообщении на одной из веток форума
Я и смотрю какие то знакомые переменные ))) рад что пригодилось.