Кодовый замок с энкодером на Attiny2313

Для открытия этого замка нужно повернуть ручку энкодера на определенное количество шагов по часовой стрелке, потом на определенное количество шагов против часовой стрелки и еще раз  повернуть по часовой стрелке, реле включится и будет во включенном состоянии пока не будет повернут энкодер по часовой или против часовой стрелки. Устройство собрано на микроконтроллере Attiny2313 фирмы Atmel, который тактируется от внутреннего генератора частотой 128кГц, система слежения за питанием отключена. Количество шагов отображается на двухразрядном семисегментном индикаторе с общим анодом. В режиме ожидания индикатор не светится, а загорается как только будет повернуть энкодер. Энкодер используется любой без кнопки.

При выключении питания запоминается состояние управляющего выхода микроконтроллера, если замок открыть и выключить питание, то при включении питания замок останется в открытом состоянии.

Программирование нового кода

Код состоит из трех частей по два разряда, формата ХХ-ХХ-ХХ. Чтобы запрограммировать код, который будет хранится в энергонезависимой памяти, нужно:

1. Повернуть ручку энкодера по часовой стрелке и выставить первую комбинацию кода, нажать на кнопку SB1, индикатор мигнет 1 раз;
2. Повернуть ручку энкодера против часовой стрелки и выставить вторую комбинацию кода, нажать на кнопку SB1, индикатор мигнет 2 раза;
3. Повернуть ручку энкодера по часовой стрелке и выставить третью комбинацию кода, нажать на кнопку SB1, индикатор мигнет 3 раза;
4. Устройство готово к приему нового кода.

скачать — прошивку

фюзы

CKDIV8 — 1

SUT1-SUT0 — 01

CKSEL3-CKSEL — 0110

9 комментариев