Микроконтролери и електроника
http://mcu-bg.com/mcu_site/

декодиране RFID
http://mcu-bg.com/mcu_site/viewtopic.php?f=3&t=5835
Страница 1 от 1

Автор:  Edesign [ Чет Юни 05, 2008 1:52 pm ]
Заглавие:  декодиране RFID

В един проект използвах U2270 и с този чип декодирам карти read only ЕМ4001. Наскоро правих редизайн и се замислих по един въпрос. Декодирам поредицата от 9 единици преди кода, прочитам картата и всичко е ОК, но как да съм сигурен, че не съм инвертирал кода (ако декодирам 9 единици като 0 и обратно може да има карти, на които битовете за четност да са ОК)? Някакви идей?

Автор:  Wise [ Чет Юни 05, 2008 3:06 pm ]
Заглавие: 

http://www.atmel.com/dyn/resources/prod ... oc4661.pdf
Прегледай алгоритмите - описано е как се прави синхронизация.

Автор:  Edesign [ Чет Юни 05, 2008 3:14 pm ]
Заглавие: 

Сихнронизацията е ясна вече съм го направил.
Въпроса е дали е възможно да се сбърка вместо поредица от 9 на брой 1 да се приемат за начало 9 на брой нули и след това приетия код да е с верни битове за четност? Т.е. възможно ли е да има такава карта?

Автор:  Wise [ Чет Юни 05, 2008 4:41 pm ]
Заглавие: 

Аз под синхронизация разбирам да намериш "дълга" лог.1 или "дълга" лог.0
Това ти е средата на бит. Оттам изчакваш 3/4 бит време и стробираш първата
половинка на следващия бит.
Сега вече чакаш единиците....
Така няма да объркаш 0 с 1

Автор:  plameniv [ Чет Юни 05, 2008 4:51 pm ]
Заглавие:  MMM

Edesign написа:
Сихнронизацията е ясна вече съм го направил.
Въпроса е дали е възможно да се сбърка вместо поредица от 9 на брой 1 да се приемат за начало 9 на брой нули и след това приетия код да е с верни битове за четност? Т.е. възможно ли е да има такава карта?

Нещо бъркаш 8 на брой нули е синхро импулса "8 бита" ?
Прочети на 28стр!

Прикачени файлове:
u2270B-.pdf [479.39 KiB]
197 пъти

Автор:  Edesign [ Чет Юни 05, 2008 5:13 pm ]
Заглавие: 

Хедъра се състои от 9 единици по протокол ЕМ4100.
Ако преместиш клока за декодиране (синхронизирал си по преден или по заден фронт) може да се приемат и 9 нули като хедър. Въпроса ми е дали е възможно да съществува карта, при която да се получат верни битове за четност при тази грешка в декодирането (и според мен е напълно възможно да има такава карта, все пак кодовете при 64 бита не са безкрайно много).
Изобщо като цяло нещо ми се губи началната синхронизация. Всичко пак ще работи, картите ще се разпознават, няма как да се объркат кодовете НО нещо не ми харесва.

Автор:  plameniv [ Чет Юни 05, 2008 5:25 pm ]
Заглавие:  Мда

Edesign написа:
Хедъра се състои от 9 единици по протокол ЕМ4100.
Ако преместиш клока за декодиране (синхронизирал си по преден или по заден фронт) може да се приемат и 9 нули като хедър. Въпроса ми е дали е възможно да съществува карта, при която да се получат верни битове за четност при тази грешка в декодирането (и според мен е напълно възможно да има такава карта, все пак кодовете при 64 бита не са безкрайно много).
Изобщо като цяло нещо ми се губи началната синхронизация. Всичко пак ще работи, картите ще се разпознават, няма как да се объркат кодовете НО нещо не ми харесва.

Не го декодираш правилно , ако го декодираш правилно ще видиш че са 8 нули !
Да не би да говориш за 64 бита - 8 бита = 56 бита -> 72057594037927936 вариации , което все пак не е никак малко , в някой уникални моменти ако четеца ти обърка нещо може да познае друга карта за същата :roll:

Автор:  Edesign [ Чет Юни 05, 2008 5:34 pm ]
Заглавие: 

Карта с чип ЕМ4100 която е само read only 64 бита има - първите 9 бита са 1 и са хедър / следва информацията разделена по 4 бита с последващ бит за четност. Нещо си в грешка за 8 бита хедър. Но не ми е това въпроса :(

Автор:  plameniv [ Чет Юни 05, 2008 5:47 pm ]
Заглавие: 

Edesign написа:
Карта с чип ЕМ4100 която е само read only 64 бита има - първите 9 бита са 1 и са хедър / следва информацията разделена по 4 бита с последващ бит за четност. Нещо си в грешка за 8 бита хедър. Но не ми е това въпроса :(

Първите 8 бита а не 9 , и след това търсиш директно 56 бита и трябва да стане !
Опитай с тип манчестър да декодираш!
Pреправи го като за 8 бита, виж си времената ти как са , те трябва да са точни както е по спецификацията, но времена на импулсите където излизат от изхода на U2270 също зависят и от нейните 125KHz където тя излъчва, ако тя не подава на картата точно 125Khz ти не получаваш тези времена който очакваш, защото картата ползва тази честота за синхронизация!

Прикачени файлове:
pulse_time.jpg
pulse_time.jpg [ 43.33 KiB | Прегледано 1441 пъти ]
coding.jpg
coding.jpg [ 40.73 KiB | Прегледано 1443 пъти ]

Автор:  Cvetanov [ Пет Юни 06, 2008 9:19 am ]
Заглавие: 

Edesign написа:
Карта с чип ЕМ4100 която е само read only 64 бита има - първите 9 бита са 1 и са хедър / следва информацията разделена по 4 бита с последващ бит за четност. Нещо си в грешка за 8 бита хедър. Но не ми е това въпроса :(



Ако проверяваш всичките парити битове (вертикалните и хоризонталните) вероятността за грешка е много малка. Но пък ако предварително се синхронизираш с поредицата (както спомена Wise), ще ти отпадне опасението за изместен бит.

Автор:  bobyk [ Пет Юни 06, 2008 10:02 am ]
Заглавие: 

Значи няма къде да срещнеш 9 1ци освен в хедъра не се безпокой. Ако проверяваш всички парити битове може да си поне 99% сигурен че всичко е ОК
П.С. веднъж ми се случи една карта да се прочете грешно (незнам ка успя да стане ) ама това си беше само веднъж.

Автор:  Edesign [ Вто Юни 10, 2008 1:07 pm ]
Заглавие: 

А някой може ли да ми каже четците за карти RS232 протокола унифициран ли е: намирам протоколи, където предаването започва с 0х02 и няма чексума/ има такива с чексума и т.н. Интересува ме някои ако ползва такива четци да сподели какъв е протокола му.

И второ голяма мистерия и около wiegand протокола - като протокол на физическо ниво всичко е ясно но никъде не намирам примерче - номер на карта - картинката с битовете? Ще съм много благодарен ако някой ми даде някаква по-практическа информация!

Страница 1 от 1 Часовете са според зоната UTC + 2 часа [ DST ]
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
http://www.phpbb.com/