Немного о кварцевом генераторе или почему "умная мышь" не читает карту
Частота частота кварцевого
генератора очень важна для установки скорости
обмена с картой. Как я уже
писал, скорость обмена информацией с картой
сразу после сброса определяется по формуле 1/ETU
, где ETU=372/частота_генератора_в_гц, т.е. скорость
выдачи ATR составит (частота_генератора_в_гц/372)
бит/сек.
Если обмен информацией осуществляется
через стандартный порт RS232
компьютера, то последний имеет только
фиксированые значения скорости приема-передачи.
Скорость для микросхемы UART 16550A определяется из
соотношения xtal_frequency_in_Hz / 16 / divisor , где divisor
может принимать значения 1-65535 , а xtal_frequency = 1.8432 MHz.
Это дает нам ряд значений {115200 , 57600, 38400, 28800, 23040, 19200, 14400, 12800, 11520, 9600, 7200, 5760, 4800, 3600, 3200, 2880 и т.д.}, причем
многие из этих значений стандартным драйвером не
поддерживаются.
Это означает, что если карта в ATR запросит
специфическую скорость передачи - стандартный
RS232 может с этим не справиться.
Рассмотрим ATR карты Nargavision (карта выдает ATR на при установках 9600, 8, N, 2):
TS T0 TA1 TB1 TC1 TD1 TA2 TD2 TA3 TB3 TC3 H i s t o r i c a l bytes TCK ----------------------------------------------------------------------------------------------------------------- 3F FF 95 00 FF 91 81 71 64 47 00 44 4E 41 53 50 30 30 33 20 52 65 76 33 36 39 F1
TS = 3F => Тип передачи ИНВЕРСНАЯ. (помним, что при этом четностость вместо обычной 'even parity' должна быть 'odd parity')
T0 = FF => TA1, TB1, TC1, TD1 переданы. 15 ($F) исторических байт.
TA1 = 95 => FI = 9, F=512, Fs Max= 5 MHz; DI = 5, D=16 ; рабочее ETU = (1/16)*(512/Fs) = 32/Fs sec, где Fs - частота внешнего генератора
TB1 = 00 => II1 = 0, PI1=0. Programming Current = 25ma, Programming Voltage - No Vpp
TC1 = FF => N=255. Это означает что размер слова сокращен с 12 ETU до 11 ETU, т.е. нужно установить только 1 стоп-бит (1start bit + 8data bits + 1parity + 1stop = 11 ETU)
TD1 = 91 => TA2, TD2 передан. TB2, TC2 - нет. Субпротоколl: T=1
TA2 = 81 => Изменение режима запрещено, протокол : "async half duplex block format"
TB2 = 00
TC2 = 00
TD2 = 71 => TA3, TB3, TC3 is передан. TD3 - нет. Субпротокол: T=1
TA3 = 64 => Размер блока (Т1) 0x64 байт (100 десятичное)
TB3 = 47 =>Мах. время ожидания символа 25 bit ETU, мах. время ожидания блока 634.9 mSec + 11 ETU
TC3 = 00 => Используется контрольная система LRC (XOR-type)
Исторические байты: 44 4E 41 53 50 30 30 33 20 52 65 76 33 36 39
D N A S P 0 0 3 R e v 3 6 9
Итак, если Fs=3.579545 MHz, то ETU = 8.939 uSec и скорость получится 118 600 бит/сек. При использовании генератора на 4.61 Mhz (такой установлен в тюнере) скорость составит 144 063 . Обозначился тупик. Единственный выход - подбирать частоту кварца.
Весьма подходящей кажется частота 3.6864 MHz. Почему весьма - да потому что такой резонатор серийно не выпускается (во всяком случае- в США). Однако, фирмами EXO и ECS выпускается интегрированый генератор в обычном DIP копрусе со встроенным делителем 1-256 и есть подходящая частота 14.7456 MHz ( 3.6864 х 4 ).
С таким генератором все заработало великолепно. К тому же - если генератор установить в панельку и иметь набор генераторов : 14.318 MHz, 14.7456 MHz и 24.00 MHz то таким набором покрываются почти все известные карты. Именно такое решение применено в известных интерфейсах типа MK.
Карта страничек | Новости |Американский блок |Изменения на Транспондерах | Гостевая Книга
Редакция и оформление - ©Александр Борзов СПб-Washington D.C.. |
![]() |
![]() e-mail: aborzov@hotmail.com |
![]() |
Информация
только для частного использования! Коммерческое использование запрещено! |
(Вся информацияа только в образовательных целях и не является пособием по несанкционированому просмотру телеканалов. Авторы не несут ответственности за использование приведенной информации)