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é slovoPlný názovPopisJednotkaNáhradná hodnota
RCRetry countPočet opakovaní príkazu pre stanicu.-2
WTWait TimeoutTimeout medzi čítaniami odpovede do jej skompletovania.ms10
MWRMax Wait RetryPočet opakovaní čítania odpovede do jej skompletovania.-20
WFTWait First TimePrvé čakanie na odpoveď po odoslaní výzvy.ms10
WARWait After ResetČakanie po povele Reset.ms10

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

AdresaTypVýznam
1TxtOInitData - Inicializačná sekvencia pre čítačku kariet po štarte D2000 alebo po vynulovaní čítačky.
2TxtOCommand - posielanie príkazov čítačke kariet.
3TxtIInputString - 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)
4TxtICardData - načítavanie obsahu magnetickej karty.
5CiSecurity - 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íkazPopis a parametre
LEDNastavenie 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;
BUZNastavenie 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;
GETCODEVyž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.

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

Príklad: RESET;
DISPZapnutie alebo vypnutie displeja.
Parametre:
n - mód: 0=vypnúť displej, 1=zapnúť displej

Príklad: DISP;1;
SETTIMENastavenie č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;
RTIMEZapnutie alebo vypnutie zobrazovania času.
Parametre:
n - mód: 0=vypnúť zobrazovanie času, 1=zapnúť zobrazovanie času

Príklad: RTIME;1;
SAVEBMPUlož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.bajt1.bajt ...
7.bit7.bit7.bit
6.bit6.bit6.bit
5.bit5.bit5.bit
4.bit4.bit4.bit
3.bit3.bit3.bit
2.bit2.bit2.bit
1.bit1.bit1.bit
0.bit0.bit0.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

SHBMPZobrazenie 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;
TEXTVý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:

SekvenciaZobrazený znak
\sodmocnina
\dšípka dole
\ušípka hore
\aznak ae
\Aveľký znak AE
\omalý znak pre priemer
\Oveľký znak pre priemer
\lšípka vľavo
\ršípka vpravo
\\znak \
\;znak ;


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

SCRLUPRolovanie 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;
SCRLDNRolovanie 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;
SINGLEZapnutie/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;
FOCUSNastavenie 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;;

GETIDVyž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:

Write a comment...