Электронный ключ на основе поломанной USB флешки и контроллера Atmel

Читать все новости

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

Популярные ключи семейства Dallas (Рисунок 1) имеют однопроводной интерфейс управления и отличаются высокой механической прочностью. Для передачи данных нужно соединить между собой сигнальные провода приемника и передатчика. Далее программа приемника сканирует код и выдает результат на исполняющее устройство в виде логических «0» или «1».
Электронный ключ на основе поломанной USB флешки и контроллера Atmel
Рисунок 1.
1При всей надежности и простоте этой системе присущ один недостаток. Для срабатывания исполнительного устройства поднести ключ к считывающему датчику нужно только один раз. Для открывания дверного замка это наилучший алгоритм. Но контролировать присутствие ключа доступа постоянно с помощью стандартных датчиков Dallas невозможно.

Чтобы постоянно отслеживать состояние контроля доступа, нужно в определенный промежуток времени осуществлять передачу данных между ведущим и ведомым устройством. Для этой цели автор остановился на использовании стандартного протокола передачи данных UART, реализованного практически во всех микроконтроллерах Atmel.

Приемником и передатчиком служат контроллеры ATtiny2313. Через разъем USB поступают как данные, так и питание (две линии питания и две линии данных). Микроконтроллер в smd исполнении легко умещается в корпус от USB Flash памяти. В обвязке микросхемы используются только индикаторные светодиоды и ограничивающие резисторы, подключенные к выводам PB0 и PB1. Выводы PD0 и PD1 подключены напрямую к разъему USB.

Скорость передачи данных по каналу UART составляет 2400 Бод/с, при частоте контроллеров 4 МГц. Для передачи четырех символов один раз в секунду этой скорости более чем достаточно. Оба контроллера настроены на частоту 4 МГц и тактируются от внутреннего осциллятора.

В основном контроллере, принимающем данные от электронного ключа, запись пароля происходит в DataBlok «login». Чтобы его поменять, нужно в исходном тексте отредактировать 4 цифры (стандартный пароль 1234). Пароль вводится только цифрами в количестве четырех символов.

Принципиальная схема устройства показана на Рисунке 2.
Электронный ключ на основе поломанной USB флешки и контроллера Atmel
Рисунок 2.
2Запись пароля в ключ происходит после нажатия кнопки «Write» в схеме основного контроллера. Опрос вывода PD6 происходит один в секунду по сигналам прерывания от таймера. После того, как сработает кнопка, мигнет светодиод, подключенный к выводу PB7. Далее идет передача пароля в контроллер с последующей записью в энергонезависимую память. Чтобы ключ обновил пароль, его нужно вставить заново. Проверка пароля происходит 1 раз в секунду. При совпадении пароля загорается светодиод «ОК», подключенный к выводу PB0. Если пароль был заменен или не совпал, то загорается светодиод «Error», подключенный к выводу PB1.


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

Собранный передатчик показан на Рисунке 3.
Электронный ключ на основе поломанной USB флешки и контроллера Atmel
Рисунок 3.
3
Демонстрационное видео:

 Автор: Захаров Денис, Украина

Возможно, Вам это будет интересно:

Постоянная ссылка на это сообщение: http://meandr.org/archives/22504

2 комментария

  1. Здравствуйте!Расскажите как и чем менять пароль в микросхеме?!Программатор есть под эту микросхему,но как поменять пароль не знаю!и еще есть ли разница между микросхемой ATtiny2313 и ATtiny2313А!так как собрал схему,но ничего не происходит!надо ее программировать или должно сразу все работать со стандартным паролем?у меня микросхемы ATtiny2313а!

    1. cкинь программу для Attiny2313

Добавить комментарий