РАДИОСХЕМЫ



СТАРЫЙ ФОРУМ

Форум на ЭЛВО


РАДИОФОРУМЫ


СХЕМЫ И СТАТЬИ



  • Страница 1 из 3
  • 1
  • 2
  • 3
  • »
Архив - только для чтения
Универсальный ключ Ibuttons
Сообщение # 1        
LED
аватар
  Постов: 530   Друзья 
Эмулятор
К счастью альтернатива оказалась, в буквальном смысле, под рукой.
Маленький эмулятор ключей на базе ATTiny13V-10SSU. Сделан он был в начале лета, эксперимента ради.
После пары испытаний, валялся без дела у меня в ящике, как инопланетное оружие в зоне 51. Главное его достоинство заключается в том, что ему не нужно внешнее питание. При работе эмулятор питается от домофона, что избавляет от возни с батарейками.

По размеру вся конструкция не больше рублевой монетки. Можно прицепить к связке ключей. На верхней части разместился переключатель для выбора ключа из памяти. Это обычный тройной ДИП-переключатель.

Выбор ключа реализован довольно оригинально. Тут балом правит двоичная система. Три переключателя. Каждый из них может быть в двух состояниях: включен (1) и выключен (0). Всего получается 8 комбинаций — 8 ключей. Если повернуть ключик так, чтобы диод (на фотке не видно) находитля слева, то переключатели будут идти в обычном порядке — «старший >> младший». Да, на первый взгляд это кажется какой-то неоправданно сложной фигней, но на деле, очень быстро запоминается.

В качестве альтернативного управляющего элемента можно заюзать крутилку, подключенную к АЦП. Сделать шкалу с номерами ключей «1 — 8″ и какой-нибудь компактный переменный резистор. Но такая конструкция работает менее надежно. При испытаниях она не могла открыть два из трех домофонов, а ключик с переключателем нормально работал на всех.

Коды в память эмулятора можно запихивать двумя способами. Зашить в EEPROM память ещё на этапе прошивки, или собрать что-то типа док-станции для перенастройки девайса. Дело в том, что кроме того, что прикидываться Ай-батоном, этот эмулятор умеет еще одну штуку. По команде 0×00 он выдает компу всю свою EEPROM память — 64 байта. А по команде 0xFF принимает 64 байта и записывает их себе в EEPROM. Физически это обычный 1-Wire.

То есть, чтобы перезаписать EEPROM память новыми кодами нужно подать ресет, выкинуть на линию команду 0xFF, и скинуть 64 байта новой EEPROM. А для чтения памяти — ресет, 0×00 и прочитать 64 байта. Эти команды прописаны в самом начале кода, и их можно заменить на другие. 0 и FF были взяты просто для теста.

Аппаратная часть эмулятора проста до безобразия:

Главная особенность схемы — питание. В этом плане эмулятор полностью повторяет настоящий iButton, питаясь во время работы от линии связи (Dq на схеме). Со стороны домофона нам обеспечена подтяжка в пару килоом (это в лучшем случае) от которой ключ питается. Это предъявляет очень важное требование к устройству — как можно более низкое потребление. При частоте 1.2 МГц и питании примерно 3V (очень примерно, т.к. зависит от мастера — домофона) получается потребление приблизительно 500 мкА.

С другой стороны, при передаче данных, линия прижимается к земле — нужно где-то запасать энергию. Для этого в схеме есть конденсатор C1 и диод D1, который не дает кондеру разряжаться, когда линия прижимается к земле.

На схеме указан диод Шоттки, и не спроста. Если поставить обычный диод, то из-за большого падения напряжения на нем (около 0.6В), напряжение на ножке PB0 будет слишком высоким. По даташиту оно не должно превышать Vcc+0.5V, а с простым диодом будет Vcc+0.6V или больше. Диод Шоттки, кроме маленького падения напряжения (0,1-0,2В) обладает другим полезным свойством — очень быстро закрывается и открывается.

Конденсатор выбирался чисто экспериментально. Пробовал разные варианты от 220nF до 10uF. Надежнее всего устройство работало с кондером в 1uF, его и оставил. При большей ёмкости тоже работало нормально, а вот меньше 1uF начинались глюки.

Алгоритм работы ключика, в переводе с ассемблера, выглядит примерно так:
Инициализируем всю периферию. Отключаем, за ненадобностью, компаратор и вешаем подтяжку на те пины, куда подключен переключатель.
Тупим 50мс. На всякий случай. За это время конденсатор должен полностью зарядиться, питание стабилизироваться, а подтяжка — подняться. Конечно, значение 50 мс взято с большим запасом.
Читаем переключатель и соображаем, с какого адреса нам начинать чтение. В EEPROM хранятся полные коды ключей, т.е. все 8 байт. Читаем нужный код из EEPROM в оперативку.
Ждем RESET импульса на линии 1-Wire. Как только ресет подан, отвечаем PRESENSE.
После этого ловим с линии код команды, которую нам сообщает домофон. Если это команда 0×00 или 0xFF значит от нас что-то хотят (записать память или прочитать) — переходим к соответсвующим функциям. Если код другой, значит с нами хочет говорить домофон.
Домофон настойчиво требует данные. Выдаём ему код из оперативки. Все 64 бита.
Переходим к шагу 4. На тот случай, если домофон захочет прочитать ключ ещё раз. Для верности.

После основного алгоритма идут процедуры чтения и записи EEPROM. Там всё просто: при чтении сначала извлекается байт из EEPROM, потом эмулятор даёт его прочитать. А при записи принимается байт и записывается в EEPROM. И так, пока не будет записана/прочитана вся оперативка (64 байта).
Файлы: 4642999.jpg (115.1 Kb) · 7619159.jpg (36.4 Kb) · 4027497.jpg (37.1 Kb) · KFAD.rar (12.3 Kb)
Сообщение # 2        
SssaHeKkk
аватар
  Постов: 2291   Друзья 
это что за фигня...домофонный ключ что ли?
Сообщение # 3        
MAXIMUS
аватар
  Постов: 1378   Х 
SssaHeKkk, ага
Сообщение # 4        
SssaHeKkk
аватар
  Постов: 2291   Друзья 
ну и как коды с домофонных ключей сдирать?
Сообщение # 5        
LED
аватар
  Постов: 530   Друзья 
SssaHeKkk, чесно, хз))
а так ключ харош)))
Сообщение # 6        
skateman
аватар
  Постов: 2201   Друзья 
Цитата (SssaHeKkk)
ну и как коды с домофонных ключей сдирать?

дак отдельный девайс нужен
Сообщение # 7        
SssaHeKkk
аватар
  Постов: 2291   Друзья 
вообщем это хрень...
Сообщение # 8        
skateman
аватар
  Постов: 2201   Друзья 
SssaHeKkk, просто LED немного не доглядел, на том сайте, откуда он стянул описание, есть подобные конструкции, которые и ключи считывать умеют
Сообщение # 9        
SssaHeKkk
аватар
  Постов: 2291   Друзья 
skateman, а че там используется в качестве железяки той
Сообщение # 10        
skateman
аватар
  Постов: 2201   Друзья 
SssaHeKkk, примерно все тоже самое
  • Страница 1 из 3
  • 1
  • 2
  • 3
  • »
Поиск:

Внимание! Форум переехал на Tehnodium.ru



© 2010-2022 "Форум Радиосхемы". All Rights Reserved  Почта  PDA