Делаем карту сами !
Эта страничка предназначена для пытливых зрителей, знакомы с радиолюбительством.
Для того, чтобы изготовить простой имитатор смарт-карты, известный как Multimac II необходимо следующее:
микроконтроллер PIC 16C84 или PIC 16F84; EEPROM 24LC16; печатная плата; программатор с интерфейсом к компьютеру программа для чипа (следите за новостями);Одночиповая карта точно такая же, только без EEPROM 24LC16
Эта карта, в отличие от одночиповой, хранит все коды в дополнительной EEPROM. Для обновления карты, как правило, не требуется перепрограммировать PIC, достаточно только EEPROM - то есть таблицу кодов.
Обратите внимание - Во время работы карты ввод-вывод чипа осуществляется через RB7, а тактовая частота подается с вывода 16 - OSC . Но для программирования карты тактовую частоту необходимо подавать на вывод 12 - RB6 - именно для этого оба этих вывода подключены к площадке CLOCK.
Красным цветом показаны проводники, предназначенные для программирования EEPROM без выпаивания - через ISO-площадки. Но в некоторых декодерах эти проводники могут вызвать сбои. Тогда их необходимо либо исключить, но пропадет возможность простого программирования EEPROM, либо после программирования заклеить ISO-площадки скотчем. В принципе возможно программировать EEPROM в собранной карте и без этих проводников.
Если у вас нет фирменного программатора для карты целиком - поставьте чипы в панельки, тогда для перепрограммирования их не нужно будет выпаивать.
При этом возможно, что у вас все заработает !
Информация только для
частного использования!
Коммерческое использование
запрещено!(Вся информацияа только в образовательных целях и не является пособием по несанкционированому просмотру телеканалов. Авторы не несут ответственности за использование приведенной информации)
НА ЧТО ГОДИТСЯ ТЕЛЕФОННАЯ КАРТОЧКА?
А.ФИЛЮТИЧ
220056, г.Минск, ул.Лесная, 1 — 22
Раньше использованные карточки можно было обменять на почте, но теперь, с введением в оборот одноразовых карточек, все изменилось
После того как карточка закончилась, ее можно только выбросить или положить в коллекцию. Но не спешите выбрасывать использованную карточку. Она еще может послужить в качестве электронного ключа или пароля для ваших программ
Микросхема в телефонной карточке имеет 8 выводов, но реально используются только 5. Однако можно обойтись только четырьмя
Посмотрите на микросхему: самый большой по площади контакт — "земля"
Расположение остальных выводов показано на рис.1. Как уже упоминалось, один из контактов можно не использовать. Этот контакт — питание +5V. Используются только контакты Reset, Clock, Data и Gnd
Саму микросхему подключаем к ПК при помощи параллельного порта. Для этого требуется переходник, схема которого показана на рис.2. Подавая необходимые данные в порт 378h (базовый адрес LPT1), можно прочитать данные", записанные в микросхему. Это делается через бит 7 порта 379h. Нас интересуют только первые четыре байта данных, т.к. остальные содержат OOh. Первый прочитанный байт должен быть равен 7Вh. Три следующих — различны для разных карточек. Следует заметить, что информация, записанная в микросхему, постоянна и никогда не изменяется, т.е. не зависит от оставшегося количества минут
Ниже приведен текст программы, читающей информацию из карточки. Program TeleCard;
uses crt;
Const;
Copyright=;'(С) Филютич Алексей, 1997';
Var;
i,j,dat: byte;
Data: array [0..3] of byte;
{————————};
Function ReadCard:byte;
var;
S:byte;
begin;
asm ;
mov dx,379h ;
in a1,dx ;
mov c1,7 ;
shr a1,c1 ;
mov S,a1 ;
end;;
ReadCard:=S;
end;;
{——————————————};
Procedure WriteData (A: byte) ;assembler;
asm;
mov a1,A;
mov dx, 37Bh;
out dx,a1 ;
end;;
{————————————};
Procedure Next; {Увеличить адрес};
begin;
Delay (1) ;
WriteData (0);
WriteData (2) ;
WriteData (0);
end;
{——————————————}
Procedure Reset;
{Сброс микросхемы в исходное состояние}
Простейший программатор двухчиповых смарт-карт
С помощью переключателя производится выбор для программирования либо PIC, либо EEPROM.Для одночиповых карт Nordic переключатель не нужен. Обратите внимание: EEPROM в собранной карте удается программировать только если карта имеет дополнительные проводники SCL и SDA (см.схему). Если проводников нет, то придется по мудрить с программой PIX - в ней предусмотрена опция программирования EEPROM через PIC - сначала в PIC зашивается программа-помощник, которая в следующем цикле программирования принимает данные и пишет их в EEPROM, а затем уже PIC заново прошивается рабочей прошивкой. |
Простейший программатор смарт-карт
Почему я рекомендую программировать именно через RS232 ? - да потому, что спалить принтерный порт очень просто, а чтобы спалить RS232 требуется специальная подготовка. Если вам непонятно - как это получается - почитайте копию статьи Вадима Чеснокова - "Начнем от печки" из Компьютерной Газеты.
Как работает такой программатор?1. По линии DTR осуществляется передача данных в чип, по линии CTS - прием данных из чипа.
2. Линия RTS служит для приема - передачи стробирующих импульсов.
3. Линия TxD осуществляет формирование сигнала MCLR - общий сброс, который имеет низкий уровень непосредственно до начала цикла программирования, а в процессе цикла программирования сюда подается напряжение программирования +12 вольт, необходимое чипу для перепрограммирования памяти программ.
Питание чипа карты осуществляется от цепочки: TxD -> VD1 -> C1 + VZ1, которая накапливает на конденденсаторе и стабилизирует напряжение на уровне 5.6 вольт.
Эта схема собиралась мной и многократно повотрялась нашими читателями.
Проблема такого программатора заключается в том, что сигналы интерфейса RS232 плохо совместимы с TTL уровнями. Логическая "1" (high или mark) это -12V вольт относительно GND интерфейса, а логический "0" (low или space) это +12V вольт и все согласование уровней осуществляется резисторами, причем в цепочки согласования входят сопротивления самого RS232 - то есть в некоторых экземплярах может быть нечеткая работа.
Кроме того в этом программаторе маловато напряжение программирования - почти всегда это +9 - +9.5 вольт и некоторым экземплярам PIC может не хватить (примерно 0.5 %).
Какое программное обеспечение использовать ?
Лучше всего использовать PIX (MS-Dos). У меня он работал даже из-под Windows 95 ! Установите в нем тип программатора 9) Ludi и укажите COM-порт к которому он подключен.
Кроме того, можно порекомендовать PicProg 0.6 - эта программа под Windows, но она не имеет опции VERIFY, то есть проверить карту можно будет только на тюнере.
Обратите внимание - если вы установили защиту кода Code Protection или Cdp - VERIFY будет невозможен (чип не даст прочитать программу).
Для программирования следует использовать прошивку для PIC в которой ввод-вывод осуществляется через RB7 - обычно файлы с такими прошивками именуют с цифрой 7 в имени (стандартные пластиковые смарт-карты или wafer имеют как раз такое устройство).
Для тех кто использует 16F84 вместо 16С84 - в этом чипе для правильной работы должет быть включен Power UP Timer ( Enable). Это можно сделать в программаторе - если используется PIX, то предохранители (Fuses) нужно устоановить так: 3FF9 а именно: [O]sc XT [W]dt NO [P]wr YES [C]dp NO.
Можно оснастить этот программатор переключателем, с помощью которого производится выбор для программирования либо PIC, либо EEPROM.
В заключение следует отметить, что таким программатором нормально программируются карты, в которых к ISO-площадке I/O подключен 13-ый вывод PIC - RB7, а вывод 12 - RB6 подключен к площадке ISO Clock - такие, как показано на нашей страничке. Для других карт необходимо знать их устройство и поставить DIP-переключатель - тогда можно будет программировать различные карты.
Еще одна проблема - трудно найти ISO7816 слот для карты. В Санкт-Петербурге могу порекомендовать фирму "Крис", в Москве - "Бурый Медведь". На крайний случай - поставьте чипы на карте на панельки и соберите программатор по такой схеме - тогда можно будет, сняв чипы, отпрограммировать их и установить обратно в карту.
Конечно, хорошо бы оснастить эту схему собственным кварцевым генератором, источником питания для чипа, +12 вольт для программирования, формирователями для RS232 - и у нас получится Smart Mouse Interface, который более корректно работает с различными картами. SmartMouse позволяет экспериментировать с другими смарт-картами - от сотовых телефонов, таксофонными и т.п.
Редакция и оформление - ©Александр Борзов |
Простейший универсальный программатор смарт-карт
Немного о разнообразии карт.
На текущий момент в обороте находится великое множество карт - одночиповые , двухчиповые, с двумя PIC и т.д. Чем они все отличаются ? С точки зрения их программирования они отличаются только методом подключение выводов PIC : 13 - RB7 и 12 - RB6. Дело в том, что при программировании PIC необходимо подавать данные на RB7, импульсы синхронизации - на RB6. Если иметь в программаторе переключатель и знать устройство карты - можно программировать самые разнообразные карты. |
Немного об устройстве карт.
Во время работы карты ввод-вывод чипа осуществляется через RB7, а тактовая частота снимается с вывода 16 - OSC , но в некоторых картах ввод-вывод производится через RB6, соответственно этот вывод и подключен к ISO-площадке I/O, а вывод RB7 - к какой либо из площадок ISO4 или ISO8. Однако, для программирования карты тактовую частоту необходимо подавать на вывод 12 - RB6, а данные - на RB7. Для этих манипуляций в данной схеме и применен DIP-переключатель.
Обратите внимание - если ввод/вывод карты осуществляется через RB6 - нужно использовать соответствующую прошивку !
Характеристики наиболее распространеннных карт и соответствующие установки ключа DIP-ключа для различных карт (пустая ячейка - OFF)
Обратите внимание: В блоке DATA (с 1-го по 4-ый ключ) одновременно может быть включен только один ключ ! |
Тип карты | Где в карте RB7 | Где в карте RB6 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 |
1 PIC ввод/вывод через RB7 | ISO7 | ISO3 | on | on | ||||||
1 PIC ввод/вывод через RB6 | ISO8 | ISO7 | on | on | ||||||
1 PIC Wafer card ввод/вывод через RB7 | ISO7 | ISO3 | on | on | ||||||
2 PIC RB6, Master PIC | ISO8 | ISO7 | on | on | ||||||
2 PIC RB6, Slave PIC | ISO4 | ISO7 | on | on | ||||||
MULTIMAC, PIC ввод/вывод через RB7 | ISO7 | ISO3 | on | on | ||||||
MULTIMAC EEPROM | on | on | ||||||||
MM2 Wafer, PIC ввод/вывод через RB7 | ISO7 | ISO3 | on | on | ||||||
MM2 Wafer, EEPROM | on | on |
Карта страничек | Новости |Американский блок |Изменения на Транспондерах | Гостевая Книга
Смарт-карты
Делаем карту Multimac II Делаем карту сами ! Простейший программатор смарт-карт Простейший универсальный программатор смарт-карт Простейший программатор двухчиповых смарт-карт НА ЧТО ГОДИТСЯ ТЕЛЕФОННАЯ КАРТОЧКА