|
Виж темите без отговор | Виж активните теми
Дата и час: Пон Юли 27, 2026 2:37 pm
u2270b - алгоритъм за декодиране
| Автор |
Съобщение |
|
Desert Leo
Ранг: Форумен бог
Регистриран на: Чет Фев 10, 2005 3:25 pm Мнения: 5677 Местоположение: София
|
Синхронизацията не ми е проблем - постигам я.
Обаче, като не знам какъв код да чета, получавам несъответствия.
При предположение Манчестър код и преден фронт в средата на бита е 1, а заден - 0, получавам периодично повтарящ се код, който започва с 9 единици и завършва с 0, но четността не отговаря.
Едва при инвертирането получих съвпадение и при контрола на четността и по редове и по колони, но само за част от картите.
От това заключавам, че останалите използват друг код и ще опитам с Biphase. При пробите установих, че отклика на картите прилича на такъв.
Обаче, ISO и on-metal картите си остават загадка за сега.
|
| Вто Юни 27, 2006 6:52 pm |
|
 |
|
plameniv
Ранг: Форумен бог
Регистриран на: Нед Окт 10, 2004 9:55 am Мнения: 1718
|
 Mda
 |  |  |  | Desert Leo написа: Синхронизацията не ми е проблем - постигам я. Обаче, като не знам какъв код да чета, получавам несъответствия. При предположение Манчестър код и преден фронт в средата на бита е 1, а заден - 0, получавам периодично повтарящ се код, който започва с 9 единици и завършва с 0, но четността не отговаря. Едва при инвертирането получих съвпадение и при контрола на четността и по редове и по колони, но само за част от картите. От това заключавам, че останалите използват друг код и ще опитам с Biphase. При пробите установих, че отклика на картите прилича на такъв. Обаче, ISO и on-metal картите си остават загадка за сега. |  |  |  |  |
При пробите ми днес станових че U2270 работи добре при тази схема , когато няма карта на изхода е без сигнал , когато доближиш карта и от 10 см почва да подава доста приличен сигнал .
Провери дали нещо не получаваш грешки при четене още преди контролера !
Ако искаш да си сигурен че не греши програмата ти някъде , изведи си на някои извод на контролера кратък импулс когато четеш , и си направи експеримента да вкараш в компа кода и този импулс ,на звуковата карта на единия канал вкарваш импулса а на другия кода, и ще се види грешката с просто око, за такива неща много добре става colledit 
|
| Сря Юни 28, 2006 12:10 am |
|
 |
|
Desert Leo
Ранг: Форумен бог
Регистриран на: Чет Фев 10, 2005 3:25 pm Мнения: 5677 Местоположение: София
|
Пламенчо, продължаваш да даваш useless съвети.
Как мислиш, че не съм проверил картите или по-точно сигнала от тях преди контролера?
Още там се вижда разликата. Програмата само я потвърждава.
При грешка в алгоритъма или програмата няма как да прочетитам кода на 7 различни карти и то стабилно и нееднократно, а на другите - не.
Ще ми е интересно все пак да разбера как се държи четеца ти при поставени едновременно две или повече карти.
|
| Сря Юни 28, 2006 7:57 am |
|
 |
|
nickich
Ранг: Почетен член
Регистриран на: Вто Ное 01, 2005 10:23 am Мнения: 704 Местоположение: Limerick, Ireland
|
Абе незнам, аз се мъчих известно време с тоя чип, незнам дали аз бъркам нещо в схемата или силикона си е такъв (по-вероятно аз да бъркам), но установих, че много зависи разстоянието от антенката до картата - колкото е по-малко - толкова повече се възбужда и бълва глупости.
Но все пак доста често гледам го използват тоя чип, така че може би повредата е в мен  Нямах много време да го изследвам.
_________________ "640 К са достатъчни на всеки за всичко." Бил Гейтс
|
| Сря Юни 28, 2006 10:03 am |
|
 |
|
plameniv
Ранг: Форумен бог
Регистриран на: Нед Окт 10, 2004 9:55 am Мнения: 1718
|
 E da
Просто ти давам идея , не съм казал че софта или някъде нещо бърка , номера е да си сигурен че всичко е ОК.
Та интересно ми е кога ще има случай да е повече от една карта , никой четец не може да прочете свестен код когато е повече от една карта на едно място .
В офиса имаме такива и те не четат 2-те ми карти в джоба когато ги доближа едновременно все едно че е някаква дето я няма в списъка 
|
| Сря Юни 28, 2006 4:04 pm |
|
 |
|
Desert Leo
Ранг: Форумен бог
Регистриран на: Чет Фев 10, 2005 3:25 pm Мнения: 5677 Местоположение: София
|
Тук донякъде си прав, ако говорим само за обхвата 125kHz.
А това е наистина интересно, защото при мен, ако се поставят две и повече карти едновременно изобщо не може да се регистрира наличието на карта. Днес пробвах и на друг четец, който показа същото.
|
| Сря Юни 28, 2006 8:51 pm |
|
 |
|
plameniv
Ранг: Форумен бог
Регистриран на: Нед Окт 10, 2004 9:55 am Мнения: 1718
|
И на мен ми стана чудно защо все пак прочита нещо , но ако не прочиташе нямаше да светне червения диод за отказ на картата и да свирне за карта липсващ от списъка
Но когато после обърнах от към страна на редовната карта един път чете нея , един път отказва
Явно хваща тази която е отпред , а задната не винаги подава сигнал .
|
| Чет Юни 29, 2006 1:18 am |
|
 |
|
plameniv
Ранг: Форумен бог
Регистриран на: Нед Окт 10, 2004 9:55 am Мнения: 1718
|
 :)
Какво стана до къде стигнахте с прочитането на различните карти ?
|
| Вто Юли 04, 2006 3:52 pm |
|
 |
|
Desert Leo
Ранг: Форумен бог
Регистриран на: Чет Фев 10, 2005 3:25 pm Мнения: 5677 Местоположение: София
|
Да! Доста време загубих и то главно заради глупостите в документацията на ЕМ4095 и Елан. Тия от Elan и EM Microelectronic Marin SA и т. н. (последният да затвори вратата) мълчат като бити з***ци на моите мейли.
Имам чувството, че те самите не знаят какво произвеждат.
Ако следвате апликейшъните им не се чудете защо нещата не се получават - грешката не е във вас!
|
| Вто Юли 04, 2006 8:34 pm |
|
 |
|
Wise
Ранг: Форумен бог
Регистриран на: Нед Дек 19, 2004 6:26 pm Мнения: 1628 Местоположение: Сливен
|
Мда, още не си пробвал картите на Sokymat. За Q5 говоря....
И те си имат поведенийце.. 
|
| Вто Юли 04, 2006 9:07 pm |
|
 |
|
plameniv
Ранг: Форумен бог
Регистриран на: Нед Окт 10, 2004 9:55 am Мнения: 1718
|
 :)
Аха, аз днес пробвах един пример от някъде ми припадна и доста добре се държеше .
Схемата е с чип U2270 и pic16F676 като съм сложил на единия порт дисплей да гледам кода в HEX формат и доста стабилно го прочита и си стой един и същ 
|
| Вто Юли 04, 2006 9:46 pm |
|
 |
|
Ergon
Ранг: Минаващ
Регистриран на: Пон Май 15, 2006 3:23 pm Мнения: 13 Местоположение: Пловдив
|
Това с делителя е хитро но как да се синхронизира след като се раздели 125KHz на 64 - от кога да започва да дели?
_________________ Човек се учи цял живот !
|
| Пон Юли 24, 2006 5:55 pm |
|
 |
|
plameniv
Ранг: Форумен бог
Регистриран на: Нед Окт 10, 2004 9:55 am Мнения: 1718
|
 Mda
Принципно всички карти се оказа че за CLOCK позват честотата идваща от приемника и така синхронизират излъчения код.
Ето ти пример:
Закачаш например делителя 4040 входа му директно на извод 8 на 2270 ,ресета го вкарваш на някой извод на контролера,извода който се пада /64 , го вкарваш на извода за прекъсване на контролера .
Нагласяваш си TMR2 да речем да ти влиза в прекъсване на всяка секунда , и когато прекъсне вдигаш една променлива, като в основния цикъл на програмата слушаш тази променлива , и ако е вдигната следиш кога преминава кода от 0 към едно да речем , тогава ресетваш 4040 спираш прекъсването на TMR2 и започваш да следиш всяко прекъсване идващо от изхода на 4040 ,за да не слагаш инвертор отвън направи го да прекъсва от 1 към 0, закъсняваш например с 20мкс и резултата (BITCode) го тикаш в 8 байта чрез ротация по следния начин.
------------------------
bcf STATUS, C
BTFSC BITCode
bsf STATUS, C
rlf Code0
rlf Code1
rlf Code2
rlf Code3
rlf Code4
rlf Code5
rlf Code6
rlf Code7
DECFSZ CounterBitCode, F
GOTO BackCheckCode.
------------------------
Като прочетеш 64 бита спираш цикъла но имай на предвид че таймера го спираш докато четеш да не ресетва 4040.
За да изкараш верния резултат от прочетеното ползваш същия вариант за ротация но ротираш докато например Code7 целия байт стане 0 , това означава че си намерил синхро импулса, а останалите байтове са ти самия код ето така:
------------------------
BCF STATUS, C
BTFSC Code7, 7
BSF STATUS, C
Synchro
rlf Code0
rlf Code1
rlf Code2
rlf Code3
rlf Code4
rlf Code5
rlf Code6
rlf Code7
bcf STATUS, Z
MOVF Code7
BTFSC STATUS, Z
GOTO Synchro
...
------------------------
Може да направиш ако искаш да прочете 1-во синхро кода още в горния цикъл и тогава да го пуснеш да прочете другата част от кода , но така е по лесно
Става и чрез самосинхронизиране но софта ще е доста по голям и има вероятност при колебание на температурата да не чете вярно всеки път кода 
|
| Пон Юли 24, 2006 8:08 pm |
|
 |
|
Ergon
Ранг: Минаващ
Регистриран на: Пон Май 15, 2006 3:23 pm Мнения: 13 Местоположение: Пловдив
|
Ако фронта на DATA е в края на 512us а не посредата ( на 256 ), то тогава няма ли да се измести цялата синхронизация с 256us и да се получат некоректно прочетени данни
_________________ Човек се учи цял живот !
|
| Вто Юли 25, 2006 11:10 am |
|
 |
|
fuser
Ранг: Ориентиран
Регистриран на: Сря Юли 05, 2006 1:54 pm Мнения: 279
|
колеги, защо си усложнявате нещата излишно!? аз работя с транспондери от преди 10 години и съм стигнал до извода, че изобщо не ми трябват спациализирани чипове!!! Чета си спокоино и обикновенните карти и Q5 & TITAN & TEMIC5557 ... даже и се пишат много добре!
|
| Вто Юли 25, 2006 1:40 pm |
|
|
Кой е на линия |
Потребители разглеждащи този форум: 0 регистрирани и 4 госта |
|
Вие не можете да пускате нови теми Вие не можете да отговаряте на теми Вие не можете да променяте собственото си мнение Вие не можете да изтривате собствените си мнения Вие не можете да прикачвате файл
|
|