Кодовый замок на PIC12F675

PIC12Keylock photoЭлектронные замки бывают разных типов, в этой статье представлен еще один интересный вариант. Отличие этой конструкции в том, что клавиатура использует толко один вывод микроконтроллера. Для определения нажатой кнопки используется АЦП. Этот способ может использоваться только с микроконтроллерами, имеющими встроенный АЦП, в этой схеме использован PIC12F675.

Как это работает

Нажмите 4 кнопки в определенной последовательности, и реле замкнет цепь замка примерно на 5 секунд. Но снаала нужно запрограммировать код следующим образом: нажать и держать кнопку CODE, пока не загорится светодиод. Когда светодиод загорится, введите свой код. После введения четвертой цифры код запишется в eeprom, и включить реле будет возможно только используя этот код. Если при вводе кода ошибиться 10 раз, то включится второе реле, отвечающее за сигнал тревоги.

PIC12Keylock photo2

PIC12Keylock sch

Распознавание кнопок с помощью АЦП

Как видно из схемы, клавиатура собрана из набора кнопок и резисторов. Клавиатура подключена только тремя проводами:, +5V, земля и сигнальный провод, подключенный к выводу 7  контроллера. Резисторы подключены последовательно, и в каждой точке соединения существует свое напряжение. Когда мы нажимаем кнопку, мы подаем определенное напряжение на вывод 7 микроконтроллера. Вывод 7 сконфигурирован как вход и подключен к модулю АЦП контроллера. PIC12F675 имеет 10-битный АЦП и диапазон значений варьируется от 0 до 1023. Так, если мы имеем 12 кнопок, диапазон между ними составляет 85 единиц. Кнопка “0”  лежит в диапазоне 0-85, Кнопка “1”  86-170, Кнопка “2” 171-256 … и т.д.

PIC12Keylock photo3

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

PIC12Keylock pcb

PIC12Keylock silk

Чертеж печатной платы в формате PDF: Keylock.pdf

Файл прошивки: Keylock hex

Загрузка...