Изучение уязвимостей электронных систем.
 
key programming immo tools emergency start device программаторы ключа заводилки Кодграббер штатных охранных систем, toyota, lexus, subaru.

Вернуться   Изучение уязвимостей электронных систем > Фрикинг > Пластиковые карты

Пластиковые карты Магнитные карты, смарт карты, таксофонные карты и тд.

Ответ
 
Опции темы
Старый 26.07.2010, 20:05   #1
steelamg
случайно влез
 
Регистрация: 17.06.2010
Сообщений: 5
Поблагодарил: 1
Поблагодарили 0 раз в 0 сообщениях
steelamg стоит на развилке
По умолчанию вопрос по 21006516

Доброго времеи суто! Дело собственно вот в чем
Читаю даташит на 21006516 частота указана 1.2 Mhz, соответсвенно один такт длится
1/1.2 =0.83 милисекунды, соответсвенно два такта по strobe до следующей Data= 1,66
Так каким же образом в куче схем используется PIC16C*** к примеру с тактовой частотой 20 Mhz (Т.е у меня опирация по обработке и записи вво внутренний EEProm PICа сигнала с ноги к которой подключена DATA занимает около 6 милисекунд, т.е. никак не укладывается в рамки. Грубо говоря 0 или единица только начинают записыватся в еепром а нужно по времени уже смотреть снова на ногу DATA)Все считалось в млабе.Далее выставляю кусок программы (уже произошло прерывание по Strobe)
INT
movwf W_Temp; стандартные процедуры сохранения регистров рекомендуемые микрочипом
movf Status,W
movwf Stat_Temp
DATA btfsc PortB,1 ;
goto NOL
movlw .1
movwf Registr
goto WRITECC
NOL movlw .0
movwf Registr
goto WRITECC
WRITECC bcf Intcon,7 ; стандартная процедура записи
incf SS,F
movf SS,W
movwf EEAdr
movf Registr,W
movwf EEData
bsf Status,RP0
bsf EECon1,2
movlw 055h
movwf EECon2
movlw 0AAh
movwf EECon2
bsf EECon1,1
bcf EECon1,4
goto Strobe
EndInt bcf Intcon,1 выход из прерывания
movf Stat_Temp,W
movwf Status
swapf W_Temp,F
swapf W_Temp,W
retfile

За корявость изложения извиняюсь
steelamg вне форума   Ответить с цитированием
Старый 26.07.2010, 20:31   #2
Piratcom
продвинутый фрикер
 
Аватар для Piratcom
 
Регистрация: 16.02.2008
Сообщений: 1,710
Поблагодарил: 127
Поблагодарили 268 раз в 177 сообщениях
Piratcom стоит на развилке
По умолчанию

Я честно говоря с пиками работал мало но с авр это можно сделать проще.
Конфигурируем 2 выводва на вход, INT0 и INT1, пусть INT0 - strob, INT1 - data.

Дальше, как сработало прерывание INT0 включаем прерывание INT1 и принимаем импульс, если принят импульс, записываем его в БУФЕР!!!!!!! в буфер запись занимает очень мало времяни по сравнению с записью в ипром. Как только приняли все биты, вырубаем прерывания, устанавливаем флаг конца приёма. Далее в основном цикле программы, проверяем этот флаг, если установлен, то переписываем из буфера в ипром... Вот и всё... Но это я те как пример общую схему накидал...


Если вас мучает совесть по ночам - спите днем!
------------------------------------------------------------
Если ты обманываешь людей, будь готов к тому что когда - нибудь тебе придётся сесть в тюрьму...
Piratcom вне форума   Ответить с цитированием
Старый 26.07.2010, 21:14   #3
Есенин
Гость
 
Сообщений: n/a
По умолчанию

Track:
A_1:
If C_p = 1 Then Goto Decode
If Clk = 0 Then Goto A_1

B_1:
If C_p = 1 Then Goto Decode
If Clk = 1 Then Goto B_1

If Dat = 0 Then T = 1
If T = 0 Then Goto Track

If Dat = 0 Then Track_up = Track_up + "1"
If Dat = 1 Then Track_up = Track_up + "0"

Goto Track

Исходник для Меги на 8 Мгц . Захват дампа . Работает на Ура !
  Ответить с цитированием
Старый 27.07.2010, 07:47   #4
freeloader
редкий гость
 
Регистрация: 02.08.2009
Сообщений: 83
Поблагодарил: 0
Поблагодарили 3 раз в 2 сообщениях
freeloader стоит на развилке
По умолчанию

Цитата:
Сообщение от Piratcom Посмотреть сообщение
Я честно говоря с пиками работал мало но с авр это можно сделать проще.
Конфигурируем 2 выводва на вход, INT0 и INT1, пусть INT0 - strob, INT1 - data.

Дальше, как сработало прерывание INT0 включаем прерывание INT1 и принимаем импульс, если принят импульс, записываем его в БУФЕР!!!!!!! в буфер запись занимает очень мало времяни по сравнению с записью в ипром. Как только приняли все биты, вырубаем прерывания, устанавливаем флаг конца приёма. Далее в основном цикле программы, проверяем этот флаг, если установлен, то переписываем из буфера в ипром... Вот и всё... Но это я те как пример общую схему накидал...

На INT0 или INT1 сажайте только STROBE, при чем прерывание по спаду. А DATA вешается на ЛЮБУЮ ногу и смотрится ее состояние во время прерывания по INT.
freeloader вне форума   Ответить с цитированием
Старый 27.07.2010, 18:20   #5
steelamg
случайно влез
 
Регистрация: 17.06.2010
Сообщений: 5
Поблагодарил: 1
Поблагодарили 0 раз в 0 сообщениях
steelamg стоит на развилке
По умолчанию

Спасибо за пояснения. В принципе все так и обстоит. Пока использую PIC среднего семейства PIC16F84A( потому что уж очень много информации на русском по нему) нога внешних прерываний RB0/INT- как раз к ней подключен STROBE прерывания по заднему фронту(1/0).Про то как реализовать запись числа не в еепром а в буфер тоже понятно. Распишу более подробно:

INT (произошло прерывание по изменению сигнала на ноге RB0(STROBE) и программа ушла в подпрограмму прерываний INT)
movwf W_Temp; стандартные процедуры сохранения регистров W и Status рекомендуемые микрочипом ПП при переходе в подпрограмму прерываний
movf Status,W
movwf Stat_Temp
DATA btfsc PortB,1 ; Проверяет ДАТУ. если дата прикрученная ко второму порту B - 1( сигнал высокий) то изходя из мануала на MAGTEK записываем в буфер W ноль. Если нет то единицу
goto NOL
movlw .1 Вот собственно записываем единицу сначала в буфер
movwf Registr а потом в регистр с названием REGISTR
NOL movlw .0 тоже самое если ноль
movwf Registr
Отмечу что ноль или единицу я записываю как байт а не как бит.(может есть какой-то другой вариант?)
Вопрос вот в чем: ели не использовать в начале запись в еепром а использовать ее после такго как считаются все биты( как писал Piratcom) то как это организовать в пик16? Если не использовать еепром значит нужно использовать регистры общего назначения такие как например Registr, а если так то их все нужно будет прописать перед выполнением программы старт, а это же просто ПИПЕЦ сколько писать)) Так что если можно хотябы не кусок кода а алгоритм этого действа посмотреть..
И второй вопрос, собственно я его уже задавал- Правильно ли я посчитал по магтековскому мануалу время одного периода Stobe 0,83 милисекунды?, Т.е кода произойдет прерывание по сигналу Strobe(я запишу сигнал с DATA котрый будет "правильным" в течении 1 милисекунды(минимум) в регистр), следующее прерывание произойдет через 1,66 милисекунд?
steelamg вне форума   Ответить с цитированием
Старый 30.07.2010, 23:07   #6
huy
участник
 
Аватар для huy
 
Регистрация: 17.03.2010
Адрес: Космас
Сообщений: 360
Поблагодарил: 1
Поблагодарили 103 раз в 53 сообщениях
huy стоит на развилке
По умолчанию

мне кажется ты какую-то хуйню посчитал по поводу длительности.. причем тут 1.2мгц ?? ето внутренняя частота работы микросхемы. про строб ясно сказано на картинке в даташите (там где про 25-50% of bit time). Со временем валидности данных правда хуйня какая-то, в примечаниях написано одно а в тексте другое, но ето тоже не проблема. кстати та буковка ето микро а не милли.
huy вне форума   Ответить с цитированием
Старый 01.08.2010, 02:01   #7
leg@
Заблокирован
 
Аватар для leg@
 
Регистрация: 10.08.2009
Адрес: www.piratcom.com
Сообщений: 345
Поблагодарил: 0
Поблагодарили 24 раз в 19 сообщениях
leg@ стоит на развилке
По умолчанию

собрал по даташиту, емкости по питанию нету также нет кандра между sum и drive ? пробовал заменять на похожий короче потребление 2,4ма и ноль реакций по f\2f , головка с диктафона(6516 чувствителен к сопротивлению головы?) и резюк между ногами головы 18к, нахрен он нужен непойму
leg@ вне форума   Ответить с цитированием
Старый 01.08.2010, 11:36   #8
freeloader
редкий гость
 
Регистрация: 02.08.2009
Сообщений: 83
Поблагодарил: 0
Поблагодарили 3 раз в 2 сообщениях
freeloader стоит на развилке
По умолчанию

Цитата:
Сообщение от leg@ Посмотреть сообщение
собрал по даташиту, емкости по питанию нету также нет кандра между sum и drive ? пробовал заменять на похожий короче потребление 2,4ма и ноль реакций по f\2f , головка с диктафона(6516 чувствителен к сопротивлению головы?) и резюк между ногами головы 18к, нахрен он нужен непойму

Между выводами головы резюк и кондер образуют фильтр низких частот. Между СУМ и ДРАЙВ (ножки 9 и 10) кондер НУЖЕН! Это же выход предусилителя и вход второго усилителя. Ты же между ними разорвал связь...или если закоротил вместо кондера, то это тоже не правильно. К головке 21006516 собраный по даташиту совсем не чувствителен. Это вообще самый неприхотливый из декодеров на мой взгляд.
freeloader вне форума   Ответить с цитированием
Старый 01.08.2010, 15:07   #9
leg@
Заблокирован
 
Аватар для leg@
 
Регистрация: 10.08.2009
Адрес: www.piratcom.com
Сообщений: 345
Поблагодарил: 0
Поблагодарили 24 раз в 19 сообщениях
leg@ стоит на развилке
По умолчанию

Между СУМ и ДРАЙВ поставил кандер и повесил осцил, усиление с головки есть, а вот с f\2f понту нет. У меня 5616g по даташиту bais притягивается к земле 1,5м я поставил 1,8м, баис и реф я так понял это обвязка компаратора. Буду потихоньку собирать с нуля и тыкать осцилом по ходу дел.
Кард презент обязательно подтягивать? А ресет?
leg@ вне форума   Ответить с цитированием
Старый 01.08.2010, 15:21   #10
steelamg
случайно влез
 
Регистрация: 17.06.2010
Сообщений: 5
Поблагодарил: 1
Поблагодарили 0 раз в 0 сообщениях
steelamg стоит на развилке
По умолчанию

To huy: Все верно нач\счет частоты 1.2 Mhz я погнал)) Но с мили и микросекундами все равно не могу определиться).Наверное всетаки в даташите опечатка и не мили секунды, а микро).. Так ему же равна ширина стробе??(Strobe widhth aprox 25-50 of bit time Ширина строба приблизительно 25-50 % из ?Bit time? мне ничего не говорит..Может время стробе напрямую зависит от скорости прохождения карты??
steelamg вне форума   Ответить с цитированием
Ответ


Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
 
Опции темы

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Простой ридер на 21006516+AVR CODE Пластиковые карты 25 05.01.2014 12:06
Возможности 21006516 -Atm- Пластиковые карты 12 21.06.2010 11:35
неработает декодер на 21006516 zer Пластиковые карты 3 17.08.2009 01:20
Декодер 21006516 nzna Пластиковые карты 6 24.02.2009 19:14


Текущее время: 14:08. Часовой пояс GMT +4.


Перевод: zCarot