Применяя в оформлении различных интерфейсов так называемые радиокнопки — виртуальные переключатели с зависимой фиксацией — современные программисты редко задумываются о том, почему они так называются. Всё дело в том, где их реальные механические прототипы нашли применение первыми — в радиолах. Нажимаешь на одну клавишу — та, что была нажата перед этим, возвращается в исходное положение. Затем такие переключатели — большие, как в тех же радиолах, и маленькие, как в серии П2К — начали находить применение в автомобильных радиоприёмниках, переносных кассетных магнитофонах, трёхпрограммных приёмниках, телевизорах и другой аппаратуре. А в напольных вентиляторах их можно встретить до сих пор.
Транзисторы, а затем и микросхемы дали возможность изготавливать электронные аналоги переключателей с зависимой фиксацией. Они получили название многостабильных триггеров. Специализированные микросхемы, например, К04КП020, позволяют реализовывать их с минимальным количеством внешних элементов. Вполне возможно, что и у вас когда-то был, а то и до сих пор есть телевизор с переключателем именно на этой микросхеме.
Когда в вычислительной технике начали получать распространение графические интерфейсы (GUI), возникла необходимость реализовывать в них виртуальные аналоги таких переключателей. В их названии программисты решили увековечить их первоначальное предназначение, вот и назвали — radio buttons. Например, на языке HTML они реализованы так.
Если вам для какой-нибудь самоделки, скажем, селектора входов усилителя, понадобится многостабильный триггер, брать для него какую-либо специализированную микросхему несколько неспортивно. Автор Instrictables под ником throbscottle реализовал такое устройство на микросхеме общего применения — 74HC174 (КР1564ТМ9), содержащей шесть обычных D-триггеров.
Всё, что нужно для объединения этих триггеров в один многостабильный — диодное «ИЛИ» и RC-цепочка, обеспечивающая сброс при включении. А чтобы устройство могло управляться кнопками, мастер добавляет конденсаторы подавления дребезга контактов и подтягивающие резисторы. У него получается такая схема:
Чтобы управлять от устройства нагрузками, скажем, обмотками реле в селекторе входов усилителя, нужно добавить транзисторные ключи, например, такие, как показано ниже. Можно выполнить ключи и на биполярных транзисторах, тогда нужны резисторы, ограничивающие ток базы. Параллельно обмоткам следует подключить диоды в обратной полярности (не показаны, как и сами обмотки). А при подключении к выходам светодиодов резистор для них требуется всего один, поскольку при любом состоянии многостабильного триггера включён всего один светодиод. В схеме включения микросхемы К04КП020 сделано так же.
Работу устройства мастер моделирует в программе Logisim. Получается такой файл, расширение которого после скачивания и перед открыванием в этой программе следует сменить с unknown на circ. Убедившись по результатам моделирования, что схема составлена правильно, мастер собирает её обмоточным проводом на макетной плате типа breadboard. Поскольку он применяет микросхему в корпусе SOIC, её выводы он отгибает через один. Так удобнее их паять. Резиновые ножки на обратной стороне платы не дают ей перемещаться по столу при нажатиях кнопок, а благодаря толкателям нажимать их удобнее. Возможно применение и самодельных толкателей.
И наконец, мастер проверяет готовую конструкцию в действии:
Перед реализацией того же алгоритма на Arduino аппаратный многостабильный триггер имеет следующее преимущество: в нём нет тактового генератора, который «молотит» непрерывно и может создавать помехи, весьма нежелательные при применении в аппаратуре достаточно высокого класса.
Доставка новых самоделок на почту
Получайте на почту подборку новых самоделок. Никакого спама, только полезные идеи!
*Заполняя форму вы соглашаетесь на обработку персональных данных