Белов, А.В. Микроконтроллеры AVR: от азов программирования до создания практических устройств

298 Микроконтроллеры AVR от азов программирования... Сначала в EEPROM записывается длина кодовой комбинации. А затем байт за байтом и сама комбинация. Если контакты переключателя режима работы разомкнуты, то программа переходит к процедуре про ­ верки кода. Эта процедура сначала извлекает из EEPROM записанную ранее длину кодовой комбинации и сравнивает ее с длиной только что введенной комбинации. Если две эти величины не равны, процедура проверки кода сразу же завершается с отрицательным результатом. Если длина обеих комбина ­ ций одинакова, то программа приступает к побайтному их сравнению. Для этого она поочередно извлекает из EEPROM ранее записанные туда байты и сравнивает каждый из них с соответствующими байтами в ОЗУ. При первом же несовпадении процесс сравнения также завершается. И завершается отрицательно. И только в том случае, если все байты в ОЗУ и в EEPROM окажутся одинаковыми, сравнение считается успешным. В случае успешного срав ­ нения программа переходит к процедуре открывания замка. Процедура открывания начинается с выдачи открывающего сигнала на исполни ­ тельный механизм. Затем программа выдерживает паузу в 2 с и снимает сигнал. Этого времени достаточно для того, чтобы открыть дверь. Затем замок переходит в исходное состояние. Схема Возможный вариант схемы замка приведен на рис. 5.17. Кнопки S1 — S10 служат для набора кода. Переключатель S11 предназначен для выбора режима работы. Если контакт переключателя S11 замкнут, замок переходит в режим «Запись». Разомкнутые контакты соответствуют режиму «Работа». Схема управления механизмом замка состоит из транзисторного ключа VT1 и электромагнитного реле К1. Резистор R1 ограничивает ток базы ключа. Диод VD1 служит для защиты от напряжения самоиндукции, возникающей на катушке реле. Питание реле осуществляется от отдельного источника +12 В (питание микроконтроллера +5 В). Если в качестве VT1 применять транзистор КТ315, то электро ­ магнитное реле может иметь Рис. 5.17. Схема кодового замка D1 АТ1пу2313 RST XL1 XL2 CPU РВ.О РВ.1 PD.0 РВ.2 PD.1 РВ.З PD.2 РВ.4 PD.3 РВ.5 PD.4 РВ.6 PD.5 РВ.7 PD.6 рабочее напряжение +12 В и рабочий ток не более 250 мА.

RkJQdWJsaXNoZXIy MTExODQxMg==