RC522 ASM kniznica

Moderátori: psichac, Moderátori

bebeno28
Stály člen
Stály člen
Príspevky: 204
Dátum registrácie: 16 Sep 2012, 21:34
Bydlisko: Trnava

RC522 ASM kniznica

Príspevok od používateľa bebeno28 » 03 Feb 2017, 21:07

Ahojte. Chcel by som Vas poprosit o radu ak bude dakto vediet.
Chcem si napisat kniznicu pre RFID modul s cipom rc522.
Vsetko co na nete najdem je len pre arduino. C kod je zatial pre mna spanieska dedina co sa tyka premmennych a zatvoriek a tak. Ja programujem V asm ak ken nie moc casto. Uz mam za sebou dake veci aj som si napisal kniznice pre Lcd 16x2 nokia lcd dallas cidlo a tak.

Rad by som si napisal aj pre tento modul ale ked citam DS tak sa v tom dako stracam. Hlavne vo nechapem je autodetekcia ktore rozhranie pouzivam a trocha mi nie je jasne aj cele posielanie a citanie dat.

Najde sa niekto kto ma s tymto modulom skusenosti a poradi podeli sa o informacie?

Dakujem

Ivan
0

peterple
Ultimate člen
Ultimate člen
Príspevky: 2328
Dátum registrácie: 25 Jún 2013, 21:06
Bydlisko: Krajné
Vek: 57
Kontaktovať používateľa:

Re: RC522 ASM kniznica

Príspevok od používateľa peterple » 03 Feb 2017, 21:37

S modulom skúsenosti nemám. Autodetekcia je vysvetlená tu
https://www.nxp.com/documents/data_shee ... pdf#page=9
Jednoducho I2C vstup volí či sa použije I2C rozhranie ak sa tam pripojí 1. Ak je tam 0 tak EA vstup volí UART ak je tam 0 alebo SPI ak je tam 1. Popísané je to jasne v tabuľke č.5

Vyber si čo ti je blízke a podľa toho nastav logické hodnoty na tie vstupy I2C a EA

Podľa toho čo zvolíš sa potom môžeme baviť o komunikácii.
0
Ukáž múdremu chybu a on sa ti poďakuje. Ukáž chybu hlupákovi a on sa urazí.

bebeno28
Stály člen
Stály člen
Príspevky: 204
Dátum registrácie: 16 Sep 2012, 21:34
Bydlisko: Trnava

Re: RC522 ASM kniznica

Príspevok od používateľa bebeno28 » 03 Feb 2017, 22:17

Ahoj. Dakujem za reakciu. Tu tabulku som pozeral snad uz 10 krat ale nejde mi do hlavy kde mam hladat tie I2C a EA piny ked na module take nie su. Nevie kde si sedim na kabli ale dako som zamotaný :-D

A chcel pouzit SPI komunikáciu. Alebo by si odporucil radsej Uart. I2C urcite nie. S tým este nemám vobec skúsenosti.

Dakujem
Prílohy
RFID-RC522-pinout.png
0

peterple
Ultimate člen
Ultimate člen
Príspevky: 2328
Dátum registrácie: 25 Jún 2013, 21:06
Bydlisko: Krajné
Vek: 57
Kontaktovať používateľa:

Re: RC522 ASM kniznica

Príspevok od používateľa peterple » 03 Feb 2017, 23:31

Nuž v tomto prípade sú dve možnosti. Samozrejme v tomto prípade takto vyhotoveného modulu si rozhranie vyberať nemôžeš a musíš použiť tak ako je to zapojené. Alebo si to preškrabeš a zapojíš podľa seba. Len to chce mať hodinársky cit v rukách.

Je to robené pre Arduinistov a tí nevedia ani že sú tam možné tri rozhrania a ani to na akom v skutočnosti fungujú. Napríklad ti budú tvrdiť že I2C zapojili na analógový pin lebo je to tak napísané na tej doštičke. Takže ak by vyviedli ešte tie dva ďalšie piny tak by si mal asi 10 miliónov diskusných príspevkov že im to nefunguje. Preto to prezieravý konštruktér zapojil na pevno a je po probléme.
0
Ukáž múdremu chybu a on sa ti poďakuje. Ukáž chybu hlupákovi a on sa urazí.

bebeno28
Stály člen
Stály člen
Príspevky: 204
Dátum registrácie: 16 Sep 2012, 21:34
Bydlisko: Trnava

Re: RC522 ASM kniznica

Príspevok od používateľa bebeno28 » 04 Feb 2017, 07:20

Aha. Dotera som si to nevsimol ze vlastne napajacie pinh su priamo pripojene na ea a i2c. Takze SPI rozhranie.
To znamena ze ja hned po pripojeni mu mozem zacat posielat prikazy? Dobre to chapem?
Uz som si napisal zakladnu rutinu na poslanie prikazu s tym ze cakam na prijatie dat ale nic mi nechodi.
Ak dobre chapem ako to funguje tak ked mu poslem po spi jeden bajt kde 7 bit bude nastaveny na read potom 6 bitov adresa a 0 bit bude 0 tak by mi mal poslat odpoved ako je dany register nastaveny?
0

peterple
Ultimate člen
Ultimate člen
Príspevky: 2328
Dátum registrácie: 25 Jún 2013, 21:06
Bydlisko: Krajné
Vek: 57
Kontaktovať používateľa:

Re: RC522 ASM kniznica

Príspevok od používateľa peterple » 04 Feb 2017, 09:09

Podľa tej dokumentácie čo som vygooglil I2C je pripojená na zem a EA na VCC takže SPI. Či je to aj reálne na module to si radšej over. Potom je tam ešte vstup RST. Takže by neškodilo pred komunikáciou ten reset urobiť a počkať. V dokumentácii švába sa dočítaš ako na to.

To s tou adresou chápem presne rovnako ako ty. Len nechápem čo to znamená nič mi nechodí. V digitálnom svete nič jaksi neexistuje. Vždy tam bude nejaká hodnota. Ako si teda prišiel na to že nič neposlal?
0
Ukáž múdremu chybu a on sa ti poďakuje. Ukáž chybu hlupákovi a on sa urazí.

bebeno28
Stály člen
Stály člen
Príspevky: 204
Dátum registrácie: 16 Sep 2012, 21:34
Bydlisko: Trnava

Re: RC522 ASM kniznica

Príspevok od používateľa bebeno28 » 04 Feb 2017, 12:08

Tak co sa tyka resetu tak som sa docital ze ked je pin v log 1 tak je reset. ale este neviem na ako dlho ma byt v log 1.
A nic mi nechodi myslim tak ze po poslani bajtu cez spi vynulujem priznak pre sspbuf ze je plny tym ze sspbuf vycitam do w registra a nasledne zase sledujem priznakovy bit. A nic sa nedeje. Slwdujem ho trivialne a to ze ak je plny tak ho vycitam a hodnotu ulozim do tegistra a zapnem led. No a led nesvieti pretoze priznakovy bit sa nemeni. Samozrejme som aj cez debouger pozeral ci nie je daka hodnota v registry ale nie je.
Mysim este raz prekontrolovat nastavenie spi aj ked som to robil uz asi 3 krat ale.....
Poslem vecer tu rutinu. Nie som teraz pri pc.

Dakujem
0

peterple
Ultimate člen
Ultimate člen
Príspevky: 2328
Dátum registrácie: 25 Jún 2013, 21:06
Bydlisko: Krajné
Vek: 57
Kontaktovať používateľa:

Re: RC522 ASM kniznica

Príspevok od používateľa peterple » 04 Feb 2017, 12:45

Ak to chápem dobre čo si napísal tak pošleš cez SPI jeden byte s adresou a potom čakáš že ti ten modul pošle ďalší byte ako odpoveď. Takto ale SPI nefunguje. Ty si master a ten modul je slave. Úlohou mástera je generovať hodiny. Slave sám od seba žiadne hodiny a data posielať nebude.
Keď si pozrieš tú SPI komunikáciu v DS tak najprv pošleš adresu a modul ti vracia blbosti. Následne pošleš ďalšiu adresu a modul ti vráti hodnotu pre tú predchádzajúcu adresu. Takto to môžeš robiť koľko krát chceš. Začiatok komunikácie sa oznamuje pomocou NSS

všetko pekne v DS tu
https://www.nxp.com/documents/data_shee ... df#page=10
https://www.nxp.com/documents/data_shee ... df#page=80
0
Ukáž múdremu chybu a on sa ti poďakuje. Ukáž chybu hlupákovi a on sa urazí.

bebeno28
Stály člen
Stály člen
Príspevky: 204
Dátum registrácie: 16 Sep 2012, 21:34
Bydlisko: Trnava

Re: RC522 ASM kniznica

Príspevok od používateľa bebeno28 » 04 Feb 2017, 12:58

Teraz pozeram ten reset. Mam pocit ze som sa mylil. Rst pin musi by stale v log 1 a reset sa vykona ked tam privediem Log 0 na dlhsie ako 100 ns?

Dobre to teraz chapem?
0

peterple
Ultimate člen
Ultimate člen
Príspevky: 2328
Dátum registrácie: 25 Jún 2013, 21:06
Bydlisko: Krajné
Vek: 57
Kontaktovať používateľa:

Re: RC522 ASM kniznica

Príspevok od používateľa peterple » 04 Feb 2017, 13:05

áno
The reset signal is filtered by a hysteresis circuit and a spike filter before it enters the
digital circuit. The spike filter rejects signals shorter than 10 ns. In order to perform a reset,
the signal must be LOW for at least 100 ns.
A potom treba počkať 40μs až sa rozbehe osc.
https://www.nxp.com/documents/data_shee ... df#page=34
aj s výpočtami a priebehmi
Ten reset možno ani netreba. píšu že to má power on reset. Takže sa to resetne samo pri zapnutí.
0
Ukáž múdremu chybu a on sa ti poďakuje. Ukáž chybu hlupákovi a on sa urazí.

bebeno28
Stály člen
Stály člen
Príspevky: 204
Dátum registrácie: 16 Sep 2012, 21:34
Bydlisko: Trnava

Re: RC522 ASM kniznica

Príspevok od používateľa bebeno28 » 04 Feb 2017, 13:58

Dakujem za napovedu. No s spi mam skusenost zatial len s posielanim dat do nokia lcd. Takze uz viem kde je chyba. Super. Dakujem . Vyskusam to a dam vediet ci pomohlo. Dostanem sa k tomu az cez tyzden streda stvrtok. Len mam este jednu otazku ohladne FIFO buferu. Ten sa bude pouzivat pri prijimani dat s cislkm tagu? pripadne pri citani dat z pamate apebo zapise? Tomuto este dobe nechapem ako sa to pouziva.
0

peterple
Ultimate člen
Ultimate člen
Príspevky: 2328
Dátum registrácie: 25 Jún 2013, 21:06
Bydlisko: Krajné
Vek: 57
Kontaktovať používateľa:

Re: RC522 ASM kniznica

Príspevok od používateľa peterple » 04 Feb 2017, 19:09

to neviem. Vyzerá že sa tam ukladajú príkazy ktoré sa potom vykonávajú. Tak ďaleko sa mi to študovať nechce. Tu je asi najlepšie si to pozrieť ako to robia arduinovské knižnice.
0
Ukáž múdremu chybu a on sa ti poďakuje. Ukáž chybu hlupákovi a on sa urazí.

bebeno28
Stály člen
Stály člen
Príspevky: 204
Dátum registrácie: 16 Sep 2012, 21:34
Bydlisko: Trnava

Re: RC522 ASM kniznica

Príspevok od používateľa bebeno28 » 04 Feb 2017, 20:50

No pen ked ja C kodu nerozumiem. Ale vsak ividim. Najskorej aby mi zacali spolu komunikovat a potom sa pojde dalej.
Dakujem zatial.

Pekny vecer prajem

-- Spojený príspevok 04 Feb 2017, 21:06 --

http://microcontrolandos.blogspot.co.uk ... 2.html?m=1

Toto je jeden link co som nasie ohladne tejto citacky kde je kniznica ale v C kode a je to v spanielcine. ale vsak to sa da prelozit translatorom. Ale jako som uz pisal mne to nic nehovori ten kod.
0

bebeno28
Stály člen
Stály člen
Príspevky: 204
Dátum registrácie: 16 Sep 2012, 21:34
Bydlisko: Trnava

Re: RC522 ASM kniznica

Príspevok od používateľa bebeno28 » 02 Mar 2017, 12:04

Tak len maly update. konecne som sa k tomu opat dostal. komunikacia mi zda sa ze funguje, pretože ked si zmenim adresu registra pri citani tak sa mi vracia vdy ina hodnota, ale moj vacsi problem je ze aj ked som si viacej krat presiel ten DS od modulu tak nedokazem pochopit ako ho pouzivat. Je tam nespocetny pocet registrov a netusim ktore pouzit v akom poradi atď.
Nemám teraz na to cas a ani náladu laborovať..
Ak by ma niekto vedel nasmerovať a vysvetliť mi podstatu tak by som sa k tomu vrátil.
Mne ide iba o jediné a to prečítanie klúča z RFID tagu aby sa to dalo použiť napriklad na otvarnie dveri .
Nepotrebujem zapisovat data na tag ani ich z neho čítať.

Tak z mojej strany zatial iba toľko ak by sa niečo zmenilo určite to sem napišem.

Dakujem
0

Napísať odpoveď