Contal CR

Contal CR

Protokol Contal CR

Podporované typy a verzie zariadení  
Konfigurácia komunikačnej linky
Konfigurácia komunikačnej stanice
Konfigurácia meraných bodov
Zoznam implementovaných príkazov
Literatúra
Zmeny a úpravy
Revízie dokumentu

Podporované typy a verzie zariadení


Protokol Contal CR podporuje komunikáciu s bezkontaktnou čítačkou kariet Contal BCR-PD. Pre komunikáciu je nutná aktualizácia firmware čítačky (náhrada pôvodného uzavretého protokolu).

Konfigurácia komunikačnej linky


  • Kategória komunikačnej linky: Serial, SerialOverUDP Device Redundant

  • Parametre sériovej linky:

    • Prenosová rýchlosť 9600 Baud

    • Parita None (žiadna)

    • Handshaking: podľa zapojenia konvertora RS-232/RS-485, dodávaný konvertor Contal vyžaduje RTS/CTS a nastavenie DTR=0

Konfigurácia komunikačnej stanice


  • Komunikačný protokol ContalCR.

  • Adresa stanice je 1 Byte, závisí od nakonfigurovanej adresy čítačky kariet nasledovne: dolný nibble je adresa čítačky, horný nibble je jeho negácia. T.j., ak je adresa čítačky 1, adresa stanice je 0xE1 = 225. Ak je adresa čítačky 2, adresa stanice je 0xD2 = 210.
    Adresa sa zadáva dekadicky, prípadne ako hexadecimálne číslo s mriežkou na začiatku (napr. #E1).

Parametre protokolu stanice

Dialóg konfigurácia stanice - pole "Parameter protokolu".
Ovplyvňujú niektoré voliteľné parametre protokolu. Môžu byť zadané nasledovné parametre protokolu stanice:

Tab. č. 1

Kľúčové slovo

Plný názov

Popis

Jednotka

Náhradná hodnota

RC

Retry count

Počet opakovaní príkazu pre stanicu.

-

2

WT

Wait Timeout

Timeout medzi čítaniami odpovede do jej skompletovania.

ms

10

MWR

Max Wait Retry

Počet opakovaní čítania odpovede do jej skompletovania.

-

20

WFT

Wait First Time

Prvé čakanie na odpoveď po odoslaní výzvy.

ms

10

WAR

Wait After Reset

Čakanie po povele Reset.

ms

10

String s parametrami protokolu sa zapisuje podľa pravidiel:

Kľúčové_slovo=hodnota;Kľúčové_slovo=hodnota; ...

Príklad:

WT=20;WFT=200;

Ak nebolo v inicializačnom stringu nájdené kľúčové slovo s platnou hodnotou, je použitá náhradná hodnota podľa tabuľky.

Konfigurácia meraných bodov


Možné typy hodnôt bodov: Ci, TxtO, TxtI.

Je nutné nakonfigurovať nasledovné merané body:

Tab. č. 1

Adresa

Typ

Význam

Adresa

Typ

Význam

1

TxtO

InitData - Inicializačná sekvencia pre čítačku kariet po štarte D2000 alebo po vynulovaní čítačky.

2

TxtO

Command - posielanie príkazov čítačke kariet.

3

TxtI

InputString - načítavanie čísel a kódov stlačených kláves. Do tohto meraného bodu sú ukladané načítané kódy (1-8 číslic) a nasledovné znaky:

  • 0 .. 9  - numerické klávesy v SINGLE móde

  • L  - klávesa Lock

  • U - klávesa Unlock

  • Y - klávesa Yes

  • N - klávesa No

  • u - klávesa up (šípka hore)

  • d - klávesa down (šípka dole)

4

TxtI

CardData - načítavanie obsahu magnetickej karty.

5

Ci

Security - oznámenie o vynulovaní stanice alebo o otvorení/zatvorení krytu (tamper).

Čítačka kariet sa riadi zapisovaním sekvencie príkazov do meraného bodu s adresou 2. Príkazy a ich parametre sú oddelené bodkočiarkou a môžu sa spájať, napr. LED;1;15;BUZ;0;0;DISP;1;

Zoznam implementovaných príkazov


Príkaz

Popis a parametre

Príkaz

Popis a parametre

LED

Nastavenie módu LED diód.
Parametre:
x - mód blikania pre zelenú LED diódu
y - mód blikania pre červenú LED diódu
Módy sú:

  • 0 - nesvieti

  • 1 - svieti

  • 2 - 250 ms pulz

  • 3 - 500 ms pulz

  • 4 - 1000 ms pulz

  • 5 - blikanie s frekvenciou 0.5 Hz

  • 6 - blikanie s frekvenciou 1 Hz

  • 7 - blikanie s frekvenciou 3 Hz

  • 240 - bez zmeny

Príklad: LED;0;3;

BUZ

Nastavenie módu interného a externého bzučiaka.
Parametre:
x - mód interného bzučiaka
y - mód externého bzučiaka
Módy sú:

  • 0 - vypnutý

  • 1 - zapnutý

  • 2 - 250 ms písknutie

  • 3 - 500 ms písknutie

  • 4 - 1000 ms písknutie

  • 5 - prerušované pískanie s frekvenciou 0.5 Hz

  • 6 - prerušované pískanie s frekvenciou 1 Hz

  • 7 - prerušované pískanie s frekvenciou 3 Hz

  • 240 - bez zmeny

Príklad: BUZ;0;1;

GETCODE

Vyžiadanie zadania kódu z klávesnice.
Parametre:
x - mód zadávania kódu:

  • bit 0=1 skončí po zadaní vyžadovaného počtu číslic

  • bit 1=1 skončí po stlačení YES

  • bit 2=1 timeout na zadanie kódu sa začne odpočítavať hneď

  • bit 2=0 timeout na zadanie kódu sa začne odpočítavať až po zadaní prvej číslice

n - žiadaná dĺžka kódu (1-8)

Príklad: GETCODE;1;4;
Po zaslaní GETCODE vráti čítačka do meraného bodu s adresou 3 buď kód (ak bol zadaný), alebo "T" (ak vypršal timeout). Skôr ale môže vrátiť kódy špeciálnych kláves (N,u,d,L,U), ak boli stlačené, ale funkcia GETCODE sa ukončí iba zadaním kódu, uplynutím timeoutu alebo príkazom RESET.
Timeout vyprší, ak do 15 sekúnd (od začiatku alebo od stlačenia poslednej číslice) nie je zadaná ďalšia číslica.

RESET

Vynulovanie čítačky kariet.
Parametre: žiadne

Príklad: RESET;

DISP

Zapnutie alebo vypnutie displeja.
Parametre:
n - mód: 0=vypnúť displej, 1=zapnúť displej

Príklad: DISP;1;

SETTIME

Nastavenie času a zapnutie jeho zobrazovania.
Parametre:
n - pozícia zobrazenia času: spodný nibble - stĺpec (0-15), vrchný nibble vertikálna pozícia (0-3), ak n=15, použije sa default pozícia
m - mód zobrazenia času: bit 0 - nastavenie AM(0)/PM(1) v 12 hodinovom móde, bit 1 - 12 hodinový mód(0)/24 hodinový mód(1)
h - hodina (0-23)
m - minúta (0-59)
s - sekunda (0-59)
Ak sa zadá hodina rovná 24, tak sa nastaví čas podľa systémového času D2000.

Príklad: SETTIME;10;2;15;30;12;
            SETTIME;10;0;24;0;0;

RTIME

Zapnutie alebo vypnutie zobrazovania času.
Parametre:
n - mód: 0=vypnúť zobrazovanie času, 1=zapnúť zobrazovanie času

Príklad: RTIME;1;

SAVEBMP

Uloženie bitovej mapy do EEPROM pamäte.
Parametre:
lo - spodný bajt adresy
hi - horný bajt adresy (použiteľná pamäť je 0x00-0x7FF, tj. 2048 bajtov)
data - ukladané dáta (maximálne 32 bajtov) zapísané ako čísla oddelené čiarkou

Organizácia pamäte na bitové mapy je nasledovná:

Na adrese 0x0000 je bitmap allocation table, v ktorej sú udané ofsety jednotlivých bitových máp (horný bajt, spodný bajt). Bitmap allocation table je ukončená dvoma bajtami 0xFF (255)

 Bitmap0 (HI,LO) 

 Bitmap1 (HI,LO) 

 Bitmap2 (HI,LO) 

  ..  BitmapN(HI,LO) 

 Ukončenie (0xFF,0xFF) 

Bitové mapy majú nasledovnú štruktúru:

    • 1. bajt - počet mikrostĺpcov bitmapy (1-120)

    • 2. bajt - počet riadkov bitmapy (1-4). Bitmapa zaberá celý riadok, t.j. jej výška je násobok ôsmich (znak má rozmer 6x8 pixelov, výška riadku je 8 pixelov)

    • dáta - obsah bitmapy. Dáta sú zadávané ako čísla oddelené čiarkou. Ak sa číslo začína znakom x alebo 0x chápe sa ako hexadecimálne, napr. x10,x2F,0xC.
      Obsah bitmapy sa zobrazí po stĺpcoch zľava doprava a potom zhora dole, ak je mapa na viac ako 1 riadok).

0.bajt

1.bajt

 ...

7.bit

7.bit

7.bit

6.bit

6.bit

6.bit

5.bit

5.bit

5.bit

4.bit

4.bit

4.bit

3.bit

3.bit

3.bit

2.bit

2.bit

2.bit

1.bit

1.bit

1.bit

0.bit

0.bit

0.bit

Príklad:

    • SAVEBMP;00;00;0,40,0,20,255,255;

    • SAVEBMP;40;0; 2,2,xFF,xC,3,xF0;

    • SAVEBMP;20;00;4,2,144,103,103,144,8,239,238,8

    • SAVEBMP;40;00;4,1,xff,x81,x81,x8F

SHBMP;0;0;0;
SHBMP;100;0;1

SHBMP

Zobrazenie bitmapy na udanej pozícii.
Parametre:
x - horizontálna pozícia (mikrostĺpce 0-119)
y - vertikálna pozícia (riadky 0-3)
n - číslo vykreslenej bitmapy

Príklad: SHBMP;25;1;4;

TEXT

Výpis textu.
Parametre:
b - bitset riadkov, kde sa text vypisuje (bity 0-3) a mód časovača. Po vypršaní časovača je celý displej zmazaný.

  • bit7=1 časovač je spustený

  • bit7=0 časovač je zastavený a vynulovaný

  • bit6=1 časovač je vynulovaný. Ak nebežal, je zároveň spustený.

  • bit5 - rezervovaný

x - x pozícia (bity 0-4 udávajú stĺpce 0-19, bity 5-7 sú rezervované)
y - y pozícia a mód:

  • bity 0..1 - riadok 1..4

  • bit 2 - rezervovaný

  • bit 3=1 - akustický signál

  • bit 4= 1- aktivované mazanie (typ záleží na bite 5)

  • bit 5 - typ mazania

    •  0-riadok, na ktorý sa vypisuje

    •  1-celý displej

  • bit 6 - nastavenie fókusu (pozícia záleží na bite 7)

    •  0 - vypnutie

    •  1 - zapnutie

  • bit 7 - pozícia fókusu

    •  0 - pôvodná pozícia

    •  1 - aktuálny riadok

 (bity 0-1 udávajú riadky 0-3, bity 2-6 sú rezervované, bit 7 znamená inverziu)
t - zobrazený text. Čítačka kariet má vlastnú tabuľku znakov, podporuje všetky základné znaky, slovenskú diakritiku plus niektoré špeciálne, ktoré sú zadávateľné pomocou sekvencie so spätnou lomkou:

Sekvencia

Zobrazený znak

\s

odmocnina

\d

šípka dole

\u

šípka hore

\a

znak ae

\A

veľký znak AE

\o

malý znak pre priemer

\O

veľký znak pre priemer

\l

šípka vľavo

\r

šípka vpravo

\\

znak \

\;

znak ;


Príklad: TEXT;1;10;1;Hello world;

SCRLUP

Rolovanie textu hore a zápis nového textu do spodného riadku.
Parametre:
b - bitset riadkov, ktoré sa rolujú (bit 0 - 1.riadok, bit 3 - 4.riadok), musí byť spojitá oblasť
t - nový text na zobrazenie

Príklad: SCRLUP;14;Spodný riadok;

SCRLDN

Rolovanie textu dole a zápis nového textu do horného riadku.
Parametre:
b - bitset riadkov, ktoré sa rolujú (bit 0 - 1.riadok, bit 3 - 4.riadok), musí byť spojitá oblasť
t - nový text na zobrazenie

Príklad: SCRLDN;14;Horný riadok;

SINGLE

Zapnutie/vypnutie posielania kódov po stlačení každej numerickej klávesy.
Parametre:
n - mód: 0=vypnúť (default), 1=zapnúť

Príklad: SINGLE;1;

FOCUS

Nastavenie fókusu.
Parametre:
b - výber fókusovaného riadku (bity 0..3), môže byť zvolená ľubovo+ná kombinácia z nich alebo 0 na zrušenie existujúceho fókusu
x - x pozícia pre text (1..19)
y - y pozícia pre text a inverzia textu:

  • bity 0..1 - y pozícia pre text (riadok 1..4)

  • bity 2..6 - rezervované

  • bit 7 - farebná inverzia: farba textu je svetlá na tmavom podklade

t - nový text na zobrazenie (môže byť prázdny text)

Príklad: FOCUS;1;5;1;hello;
            FOCUS;1;10;1;;

GETID

Vyžiadanie zaslania identity čítačky kariet.
Parametre: žiadne
Čítačka vráti do meraného bodu s adresou 3 reťazec xxyyzzz, kde:

  • xx - číslo firmware

  • yy - revízia firmware

  • zzz - verzia hardware:

    • 128 - magnetic CR - full version

    • 136 - magnetic CR - OEM interface

    • 160 - proximity CR - full version

    • 161 - proximity CR - OEM interface

Príklad: GETID;

Literatúra


-

Zmeny a úpravy


-

Revízie dokumentu


  • Ver. 1.0 - 4. január 2004 - Vytvorenie dokumentu.

Súvisiace stránky:

Komunikačné protokoly