Дверной звонок

В прошлый раз была запилена камера в в кнопку от дверного звонка. Теперь пришлось его проапгрейдить. После апгрейда базы звонка (я зову это часть — «сервер»), он не дает звонить чаще чем раз в 10 секунд, плюс появилась кнопка отключения звука


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


DSC_0279


DSC_0280




















В сервере стоит такая же микросхемка-приемник, как в радиоуправляемых машинках. У нее 5 выходов, которые на плате подписаны A-E

DSC_0277_1











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

DSC_0284











У клиента соответственно 5 входов. Один вход на клиенте соединен с его кнопкой. Когда нажимаем кнопку на клиенте, на этой ножке на сервере меняется напряжение с 0 до 3В.

DSC_0285











Перемычку надо разорвать и припаять по ножке от МК. Он слушает сигнал от микросхемы, и если решает, что можно звонить — дергает той ножкой куда подключена звонилка.

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

Сорец.

3 thoughts on “Дверной звонок

  1. А это AtMega8?
    Вместо бесконечного цикла лучше, сделать обработку нажатия через прерывание, правда тогда нужно было PortD (PD2) использовать…

      1. Меньше энергии жрать будет, потому-что вместо бесконечного цикла можно усыплять МК, и он будет неактивен пока не произойдет нажатие.
        С одной стороны это экономия на спичках, с другой стороны достаточно выбрать ножку PD2 и перевернуть код с ног на голову ))).

Leave your comment