Kanał - ATNEL tech-forum
Wszystkie działy
Najnowsze wątki



Teraz jest 26 kwi 2026, o 13:25


Strefa czasowa: UTC + 1





Utwórz nowy wątek Odpowiedz w wątku  [ Posty: 2 ] 
Autor Wiadomość
PostNapisane: 25 sty 2014, o 23:07 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 20 sie 2013
Posty: 795
Lokalizacja: Poznań
Pomógł: 59

Postanowiłem zgłębić dekodowanie sygnału z EM4095, którym jest kod RFID. Posiadam karty 125kHz Manchester.

EM4095 posiada dwa interesujące mnie wyjścia: RDY/CLK czyli sygnał zegarowy i DEMOD_OUT czyli zdemodulowany sygnał z karty. sygnał zegarowy między zboczami trwa 7,95-8,3 us, natomiast sygnał z karty liczy między zboczami 32 lub 64 syknięcia zegara.
Obrazek Obrazek

Jak widać na przebiegach i podpierając się ramką RFID mamy następujący sygnał karty:
111111111
00000
00000
00000
00000
01001
01111
11000
00101
10001
00000
01010
Jest to dziewięć "1" początkowych, dziesięć razy cztery bity numeru karty i bit parzystości wierszy, cztery bity parzystości kolumn i "0"

Moja metoda dekodowania to:
jeśli na górze mamy długą kreskę to mamy przejście 0->1
jeśli na dole mamy długą kreskę to mamy przejście 1->0
każda krótka kreska to powtórzenie aktualnego stanu.

Sygnał chcę zamienić na ASCII za pomocą Attiny13A i wysłać za pomocą uart lub I2C (zależnie od wersji).


Tu są moje pytanie:

Pomysł to liczenie sygnału zegarowego jednym przerwaniem (liczenie tylko zboczy opadających) i szukanie zbocza na demod (muszę wiedzieć jakie wystąpiło) - po jego wystąpieniu sprawdzanie licznika zegarowego i zapisywanie bitu do zmiennej. I tu właśnie nie wiem, których przerwań najlepiej użyć. Jakaś mała podpowiedź byłaby dla mnie zbawieniem.



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 27 sty 2014, o 20:01 
Offline
Uzytkownik zasłużony dla forum.atnel.pl
Avatar użytkownika

Dołączył(a): 16 lip 2012
Posty: 2088
Lokalizacja: Leżajsk / Kraków
Pomógł: 411

W zielonej książce Mirka masz dekodowanie sygnału RC5 to też Manchester. Tam jeden Timer załatwia sprawę, ale korzysta z wejścia ICP. Można też wykrywać opadające zbocze (przerwanie zewnętrzne) i ustawiać timer na 3/4 bitu (gdzie bit to zmiana 1-0 lub 0-1) i w procedurze obsługi przerwania od timera sprawdzać stan wejścia.

_________________
Dragonus Cracovus: Biomagia



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
Wyświetl posty nie starsze niż:  Sortuj wg  
Utwórz nowy wątek Odpowiedz w wątku  [ Posty: 2 ] 

Strefa czasowa: UTC + 1


Kto przegląda forum

Użytkownicy przeglądający ten dział: Google Adsense [Bot] i 9 gości


Nie możesz rozpoczynać nowych wątków
Nie możesz odpowiadać w wątkach
Nie możesz edytować swoich postów
Nie możesz usuwać swoich postów
Nie możesz dodawać załączników

Szukaj:
Skocz do:  
Sitemap
Technologię dostarcza phpBB® Forum Software © phpBB Group phpBB3.PL
phpBB SEO