Online Store

μFR Protokol serijske komunikacije za uređaje serije μFR

μFR Protokol serijske komunikacije za uređaje serije μFR

Uređaji serije μFR mogu uspostaviti komunikaciju putem FTDI-jevog Virtual COM priključka, tako da se uređaji smatraju standardnim HARDVEROM COM priključka.

Komunikacijski parametri #

Čitači s FTDI serijskim sučeljem #

μFR Classic i μFR Napredni čitači s USB vezom:

Serijska komunikacija: 1 Mbps, 8-N-1, Kontrola protoka: Nema;

RTS pin koristi se za resetiranje uređaja. Kada je RTS postavljen, uređaj je u stanju resetiranja. Kada je RTS jasan, uređaj je u normalnom stanju.

μFR BaseHD čitači s instaliranim firmverom "μFR podrška" (npr. XR i μFR XRc čitači):

Serijska komunikacija (pomoću upravljačkog programa VCOM FTDI): 250 kbps, 8-N-1, Kontrola protoka: Nema;

Čitači bez FTDI serijskog sučelja #

RS485 (veza bez pretvarača USB/RS-485):

Promjenjiva brzina bauda može se postaviti putem softverskog alata. Trenutna stopa bauda mora biti poznata pri promjeni stope bauda. Zadana stopa bauda je 250 kbps.

μFR Classic Nano RS232 i veličina kartice RS232:

UART / TTL: 115200 baznih bodova, 8-N-1, Kontrola protoka: Nema.

115200 baznih bodova je zadana stopa bauda. Promjenjiva brzina bauda može se postaviti putem softverskog alata.

PIN 4 na konektoru koristi se za resetiranje uređaja. Ako je napon na ovoj igli visok (3,3 V), tada je uređaj u stanju resetiranja. Ako je napon nizak (0 V), tada je uređaj u normalnom radnom stanju.

Ako je uređaj spojen na naš RS232 na TTL pretvarač, tada se razina napona na pinu 4 kontrolira nad RTS-om. Kada je RTS jasan, uređaj je u stanju resetiranja. Kada je RTS postavljen, uređaj je u normalnom stanju.

 

Tijekom ažuriranja firmvera, RTS pin mora biti spojen na pin 4 na uređaju.

Pinout za UART / TTL model prikazan je u nastavku:

nano-rs232-pinout

U komunikacijske svrhe između uređaja za čitanje i glavnog računala stvara se vlasnički protokol D-Logica pod nazivom "μFR serijski".

Svu komunikaciju pokreće domaćin (računalo ili druge platforme) na koje je uređaj povezan.

Maksimalni podaci preneseni jednom naredbom ili primljeni odgovorom jednog uređaja, iz firmvera verzije 3.9.44 je 256 bajtova, a prije je 192 bajta.

Općenito, postoje dvije vrste paketa:

  • CMD – naredba koju je glavno računalo poslalo na uređaj
  • ANS – odgovor poslan s uređaja na hostiranje

CMD može biti kratak ili dug set. CMD kratki set uvijek traje 7 bajtova, dok CMD dugi set – nazvan CMD_EXT može imati promjenjivu duljinu.

Odgovori su:

  • ACK – Priznanje, sve je u redu, uređaj čeka sljedeći CMD ili CMD EXT
  • ERR – Došlo je do pogreške, bajt pogreške definira ERR_TYPE
  • RSP – Odgovor uređaja na CMD-u ili CMD_EXT

Bajtovi komunikacijskih konstanti definiraju vrstu paketa, što se može vidjeti u prva tri bajta svakog paketa.

Prvi bajt svakog paketa je HEADER bajt. Drugi bajt je uvijek CMD_CODE. Treći bajt je TRAILER bajt.

Stol1. Komunikacijske konstante

CMD_HEADER 0x55 CMD_TRAILER 0xAA
ACK_HEADER 0xAC ACK_TRAILER 0xCA
RESPONSE_HEADER 0xDE RESPONSE_TRAILER 0xED
ERR_HEADER 0xEC ERR_TRAILER 0xCE

 

ČEK #

Svi kontrolni zbrojevi u ovom dokumentu izračunavaju se na isti način: za izračun kontrolnog zbroja koristi se red bajtova, svaki bajt je XOR-ed sa sljedećim do kraja retka. Konačna vrijednost povećava se s 0x07.

Na primjer, CMD paket ima 7 bajtova, gdje je 7. bajt kontrolni zbroj prethodnih 6 bajtova:

CHECKSUM = (Byte1 XOR Byte2 XOR Byte3 XOR Byte4 XOR Byte5 XOR Byte6) + 0x07

CMD kodovi #

Svaka naredba ima odgovarajuću vrijednost – pogledajte COMMANDS OVERVIEW.

Kodovi pogrešaka #

Ako dođe do pogreške, uređaj će odgovoriti s ERR paketom. Svaka pogreška ima odgovarajuću vrijednost koja se može naći u tablici u Dodatku: KODOVI POGREŠAKA.

CMD paket #

CMD paket može biti kratak – dug 7 bajtova ili EXT-završio s promjenjivom duljinom. U slučaju EXT CMD paketa, četvrti bajt CMD paketa veći je od 0, a sadrži cjelobrojnu vrijednost – duljinu CMD_EXT paketa. Prilikom izdavanja CMD_EXT uvijek glavni CMD 7-byte dugi paket ide prvi. Ako je sve očekivano, uređaj će odgovoriti s ACK paketom, čekajući CMD_EXT paket. Pri pogrešci će uređaj odgovoriti ERR paketom. CMD_EXT se sastoji od različitih parametara, ovisno o vrsti naredbe, tako da CMD_EXT nema fiksnu duljinu i redoslijed parametara.

CMD paket ima sljedeću strukturu:

CMD paket ima sljedeću strukturu:

Obavezna struktura CMD paketa od 7 bajtova

Bajt 1 Bajt 2 Bajt 3 Bajt 4 Bajt 5 Bajt 6 Bajt 7
CMD_HEADER CMD_CODE CMD_TRAILER CMD_EXT_Length CMD_Par0 CMD_Par1 ČEK

 

  • Bajt 1: CMD_HEADER kako je definirano u tablici 1.Komunikacijske konstante, 0x55
  • Bajt 2: CMD_CODE kako je definirano u tablici 2. CMD_CODE vrijednosti
  • Bajt 3: CMD_TRAILER kako je definirano u tablici1.Komunikacijske konstante, 0xAA
  • Bajt 4: CMD_EXT_Length: Ako 0, tada se ne koristi "CMD EXT"); ELSE vrijednost je duljina cijelog paketa CMD_EXT
  • Bajt 5: CMD_Par0: parametar naredbe0, uzima različite vrijednosti ovisno o naredbi
  • Bajt 6: CMD_Par1: parametar naredbe1, uzima različite vrijednosti ovisno o naredbi
  • Bajt 7: CHECKSUM – Kontrolni zbroj bajtova od 1 do 6 kako je gore objašnjeno

CMD_EXT paket ima sljedeću strukturu:

CMD_EXT paket ima sljedeću strukturu:

struktura paketa CMD_EXT
Bajt 1 Bajt N Bajt N +1
Bajtovi parametara od 1 do N

CMD_EXT_CHECKSUM

 

Bajtovi parametara od 1 do N – različiti parametri, vrijednosti ovise o vrsti naredbe

  • CMD_EXT_CHECKSUM – Kontrolni zbroj bajtova od 1 do N
  • CMD_EXT_Length je broj svih bajtova, uključujući CMD_EXT_CHECKSUM; npr. duljina je N + 1

Vrste paketa ANSWER #

Uređaj može odgovoriti sljedećim vrstama paketa:

ACK – Paket priznanja

Ako su naredba i CMD paket ispravno konfigurirani (struktura i kontrolni zbroj) i potrebno je poslati dodatni CMD_EXT paket, uređaj će odgovoriti SCK paketom.

ERR – Paket pogrešaka

Ako je došlo do pogreške, uređaj će odgovoriti ERR paketom. Neke naredbe mogu vratiti skup ERR_EXT.U tom slučaju, ERR_EXT paket dolazi odmah nakon ERR paketa.

RSP – Paket odgovora

Ako se pošalje ispravno konfigurirani CMD ili CMD_EXT paket, uređaj će odgovoriti RSP ili RSP_EXT paketom, što ovisi o izdanoj naredbi. Na primjer, ako CMD treba odgovor koji je dovoljno kratak za RSP paket, neće biti RSP_EXT paketa. Inače, ako CMD ili CMD_EXT trebaju odgovor s više bajtova, RSP_EXT će doći odmah nakon RSP paketa. Uobičajena je situacija prilikom čitanja podataka pomoću naredbe LinearRead, gdje će uređaj odgovoriti redom bajtova s podacima kartice.

ACK – Paket priznanja #

ACK paket ima sljedeću strukturu:

ACK paket ima sljedeću strukturu:

Struktura ACP paketa

Bajt 1 Bajt 2 Bajt 3 Bajt 4 Bajt 5 Bajt 6 Bajt 7
ACK_HEADER CMD_CODE CMD_TRAILER Nevažno, ne koristi se u ACK paketu ČEK

 

  • Bajt 1: ACK_HEADER kako je definirano u tablici 1.Komunikacijske konstante, 0x55
  • Bajt 2: CMD_CODE kako je definirano u tablici 2. CMD_CODE vrijednosti. Uređaj ACK priznaje da je prethodna naredba ispravno poslana
  • Bajt 3: ACK_HEADER kako je definirano u tablici 1.Komunikacijske konstante, 0x55
  • Bajt 4: Bajt 5, Bajt 6: Ne koristi se u ACK paketu, vrijednosti su 0x00
  • Bajt 7: CHECKSUM – Kontrolni zbroj bajtova od 1 do 6 kako je gore objašnjeno

ERR – paket pogrešaka #

ERR paket ima sljedeću strukturu:

Obvezni ERR od 7 bajtova

Bajt 1 Bajt 2 Bajt 3 Bajt 4 Bajt 5 Bajt 6 Bajt 7
ERR_HEADER ERROR_CODE ERR_TRAILER ERR_EXT_Length Err_Val0 Err_Val1 ČEK

 

  • Bajt 1: ERR_HEADER kako je definirano u tablici1.Komunikacijske konstante, 0xEC
  • Bajt 2: ERR_CODE kako je definirano u tablici 3. KODOVI POGREŠAKA.
  • Bajt 3: ERR_TRAILER kako je definirano u tablici 1.Komunikacijske konstante, 0xCE
  • Bajt 4: Ako postoji ERR_EXT, ovaj bajt sadrži duljinu paketa ERR_EXT (uključujući ERR_EXT kontrolni zbroj)
  • Bajt 5: Moguće dodatne informacije o pogrešci mogu se definirati u ERR_Val0
  • Bajt 6: Moguće dodatne informacije o pogrešci mogu se definirati u ERR_Val1
  • Bajt 7: CHECKSUM – Kontrolni zbroj bajtova od 1 do 6 kako je gore objašnjeno

ERR_EXT i ima sljedeću strukturu:

 

struktura paketa ERR_EXT
Bajt 1 .. Bajt N Bajt N +1
Bajtovi pogrešaka od 1 do N ERR_EXT_CHECKSUM

 

  • Bajt 1: Prvi bajt ERR_EXT
  • Bajt N: N-nti bajt ERR_EXT
  • Bajt N + 1: ERR_EXT_CHECKSUM, kontrolni zbroj bajtova od 1 do N, izračunat kako je ranije objašnjeno.

 

RSP – paket odgovora #

RSP paket ima sljedeću strukturu:

Obvezni RSP od 7 bajtova

Bajt 1 Bajt 2 Bajt 3 Bajt 4 Bajt 5 Bajt 6 Bajt 7
RSP_HEADER CMD_CODE RSP_TRAILER RSP_EX_length RSP_Val0 RSP_Val1 ČEK

 

  • Bajt 1: RSP_HEADER kako je definirano u tablici 1.Komunikacijske konstante, 0xED
  • Bajt 2: CMD_CODE kako je definirano u tablici 2. CMD_CODE vrijednosti
  • Bajt 3: ERR_TRAILER kako je definirano u tablici 1.Komunikacijske konstante, 0xDE
  • Bajt 4: Ako postoji RSP_EXT, ovaj bajt sadrži duljinu paketa RSP_EXT (uključujući RSP_EXT kontrolni zbroj)
  • Bajt 5: Moguće dodatne informacije o ODGOVORU mogu se definirati u RSP_Val0
  • Bajt 6: Moguće dodatne informacije o ODGOVORU mogu se definirati u RSP_Val1
  • Bajt 7: CHECKSUM – Kontrolni zbroj bajtova od 1 do 6 kako je gore objašnjeno.

t

struktura paketa RSP_EXT
Bajt 1 .. Bajt N Bajt N +1
RSP bajtovi od 1 do N RSP_EXT_CHECKSUM

 

  • Bajt 1: Prvi bajt RSP_EXT
  • Bajt N: N-nti bajt RSP_EXT
  • Bajt N +1: RSP_EXT_CHECKSUM, kontrolni zbroj bajtova od 1 do N, izračunat kako je ranije objašnjeno.