Электронные ключи широко применяются в повседневной жизни. При электронной передаче данных исключается возможность механического износа деталей. Электронными ключами доступа можно открывать дверные электромагнитные замки, блокировать программные средства ПК, контролировать доступ к программно-аппаратным комплексам.
Популярные ключи семейства Dallas (Рисунок 1) имеют однопроводной интерфейс управления и отличаются высокой механической прочностью. Для передачи данных нужно соединить между собой сигнальные провода приемника и передатчика. Далее программа приемника сканирует код и выдает результат на исполняющее устройство в виде логических «0» или «1».
Elektronischen Schlüssel durch eine unterbrochene USB-Flash-Laufwerk und Controller Atmel
Рисунок 1.
При всей надежности и простоте этой системе присущ один недостаток. Для срабатывания исполнительного устройства поднести ключ к считывающему датчику нужно только один раз. Для открывания дверного замка это наилучший алгоритм. Но контролировать присутствие ключа доступа постоянно с помощью стандартных датчиков Dallas невозможно.
Чтобы постоянно отслеживать состояние контроля доступа, нужно в определенный промежуток времени осуществлять передачу данных между ведущим и ведомым устройством. Для этой цели автор остановился на использовании стандартного протокола передачи данных UART, реализованного практически во всех микроконтроллерах Atmel.
Приемником и передатчиком служат контроллеры ATtiny2313. Через разъем USB поступают как данные, так и питание (две линии питания и две линии данных). Микроконтроллер в smd исполнении легко умещается в корпус от USB Flash памяти. В обвязке микросхемы используются только индикаторные светодиоды и ограничивающие резисторы, подключенные к выводам PB0 и PB1. Выводы PD0 и PD1 подключены напрямую к разъему USB.
Скорость передачи данных по каналу UART составляет 2400 Бод/с, при частоте контроллеров 4 МГц. Для передачи четырех символов один раз в секунду этой скорости более чем достаточно. Оба контроллера настроены на частоту 4 МГц и тактируются от внутреннего осциллятора.
В основном контроллере, принимающем данные от электронного ключа, запись пароля происходит в DataBlok «login». Чтобы его поменять, нужно в исходном тексте отредактировать 4 цифры (стандартный пароль 1234). Пароль вводится только цифрами в количестве четырех символов.
Принципиальная схема устройства показана на Рисунке 2.
Elektronischen Schlüssel durch eine unterbrochene USB-Flash-Laufwerk und Controller Atmel
Рисунок 2.
Запись пароля в ключ происходит после нажатия кнопки «Write» в схеме основного контроллера. Опрос вывода PD6 происходит один в секунду по сигналам прерывания от таймера. После того, как сработает кнопка, мигнет светодиод, подключенный к выводу PB7. Далее идет передача пароля в контроллер с последующей записью в энергонезависимую память. Чтобы ключ обновил пароль, его нужно вставить заново. Проверка пароля происходит 1 раз в секунду. При совпадении пароля загорается светодиод «ОК», подключенный к выводу PB0. Если пароль был заменен или не совпал, то загорается светодиод «Error», подключенный к выводу PB1.
При смене пароля, нужно производить его перезапись в ключ с помощью кнопки вывода PD6. Запись нового логина в основной МК возможна только после его перепрограммирования. При доработке программы данные можно заносить с клавиатуры или других вспомогательных устройств.
Собранный передатчик показан на Рисунке 3.
Elektronischen Schlüssel durch eine unterbrochene USB-Flash-Laufwerk und Controller Atmel
Рисунок 3.
Демонстрационное видео:
Autor: Захаров Денис, Украина
Здравствуйте!Расскажите как и чем менять пароль в микросхеме?!Программатор есть под эту микросхему,но как поменять пароль не знаю!и еще есть ли разница между микросхемой ATtiny2313 и ATtiny2313А!так как собрал схему,но ничего не происходит!надо ее программировать или должно сразу все работать со стандартным паролем?у меня микросхемы ATtiny2313а!
cкинь программу для Attiny2313
Добрый день.
Скиньте, пожалуйста, прошивку для этой схемы. Спасибо