EM4095 RFID

Hogyan programozzak AVR chipet? Programozók beállításai...
Bascom nyelvű programok...
Válasz küldése
Avatar
Komi
DrótVégénSzéndarab
Hozzászólások: 27
Csatlakozott: 2009. március 24. kedd, 6:00

EM4095 RFID

Hozzászólás Szerző: Komi »

Sziasztok!

Használta valaki már a fenti rfid olvasó csipet bascom alól?
A bascom ban van a help ben minta is, építettem egyet (kettőt) de nem igazán megy :(

Úgy néz ki, a 4095 ic ből kijön a jel, egy szkópon próbáltam nézegetni
(elég silány a szkóp) annyi láttszik, hogy alapból van valami adatfolyam, és ha a közelébe teszek egy rfid kártyát, akkor változik a jelsorozat.
De sajna a help alapján (gyak uaz) írt progi nem nem olvassa.

Köszi

esetleg így valaki??
http://avrhelp.mcselec.com/em4095_rfid_reader.htm
Avatar
Komi
DrótVégénSzéndarab
Hozzászólások: 27
Csatlakozott: 2009. március 24. kedd, 6:00

Hozzászólás Szerző: Komi »

Na, egyenlőre sikertelen, viszont arra jutottam, mintha az em4095 olvasáskor a demod_out kimenetén invertált jelet adna ki.
A kódsor elvileg 9 db egyessel kezdődne, de szkópon nézve, mintha kilenc darab nulla lenne, és így tovább, minden bit pont a fordított.
(már amennyire a régi szkópommal látni vélem)

Esetleg valaki ért annyira az avr assemlby -hez, hogy megnézze, a bascom könyvtárban az em4095 library fájloktat, mit és hogyan csinálnak?
Tehát, hogy kilenc darab nulla (jel közepén lefutó él) vagy kilenc darab egy (jel közepén felfutó él) ami a startot jelöli. (mancheseter kódolás)

Köszi
Avatar
Komi
DrótVégénSzéndarab
Hozzászólások: 27
Csatlakozott: 2009. március 24. kedd, 6:00

Hozzászólás Szerző: Komi »

A jelet próbáltam egy npn tranóval megforgatni, sikerült, de így sem ismeri fel a mega88p a kódsort.

Aztán eszembe jutott, hogy egyátalán befut e a megszakítás.
Hát úgy tűnik nem.
A megszakítás rutin elejére tettem egy led bekapcsolást, és nem ok.

Mondom, hátha az int1 lábbal van a gond, áthekkeltem a panelon, hogy az em4095 kimenete ne az int1 re hanem az int0 ra jöjjön be.
Így ha nem az em4095 config hitag sorral nézem, hanem csak külön engedem a megszakítást az int0 ra, akkor eljut a megszakítás rutinig, de ha beteszem az em4095 sorokat, akkor már nem.

ez az em4095 verzió: (ledr1 és ledr2 kéne hogy menjen megszakítás esetén)

Kód: Egész kijelölése

$regfile = "m88pdef.dat"
$crystal = 7372800
$hwstack = 40
$swstack = 40
$framesize = 40
$lib "em4095.lib"

Reset Portc.4
Config Portc.4 = Output                                   
Ledg2 Alias Portc.4

Reset Portc.2
Config Portc.2 = Output                                
Ledg1 Alias Portc.2

Reset Portc.5
Config Portc.5 = Output                          
Ledr2 Alias Portc.5

Reset Portc.3
Config Portc.3 = Output                                    
Ledr1 Alias Portc.3

Emshd Alias Portd.4
Config Emshd = Output
Emshd = 1
Waitms 200
Emshd = 0


Dim Tags(5) As Byte                                         
Dim J As Byte

Config Hitag = 64 , Type = Em4095 , Demod = Pind.2 , Int = @int0

On Int0 Checkints                                       
Config Int0 = Change                                   
Enable Interrupts                                           

Set Ledg1

Do

Loop


Checkints:
Set Ledr1
Set Ledr2
' Call _checkhitag                                           'in case you have used a PCINT, you could have other code here as well

 Return

 End

ez pedig az em4095 móka nélküli progi, HW ugyanaz, itt bekövetkezik a megszakítás

Kód: Egész kijelölése

$regfile = "m88pdef.dat"

Config Int0 = Change

Reset Portc.4
Config Portc.4 = Output                             
Ledg2 Alias Portc.4

Reset Portc.2
Config Portc.2 = Output                         
Ledg1 Alias Portc.2

Reset Portc.5
Config Portc.5 = Output                                   
Ledr2 Alias Portc.5

Reset Portc.3
Config Portc.3 = Output                                 
Ledr1 Alias Portc.3

On Int0 Int0_int                                        

Enable Interrupts
Enable Int0                                             

Do
Waitms 500
Reset Ledg2
Set Ledg1
Waitms 500
Set Ledg2
Reset Ledg1

Loop

End

Int0_int:

Set Ledr1
Set Ledr2

Return
Avatar
Komi
DrótVégénSzéndarab
Hozzászólások: 27
Csatlakozott: 2009. március 24. kedd, 6:00

Hozzászólás Szerző: Komi »

Az a jó, hogy mire az előző hozzászólásom megnéztem, megláttam, hogy az enable int0 hiányzik az em4095 verzióból.
És igen, úgy már működik.
Viszont ez nem szerepelt sem a példában, sem egy német srác építési leírásában.
Válasz küldése