Zápisník pojídačky koláčů - Řízení pokladního displeje
Před nějakou dobou jsem získala dva pokladní displeje. Nějakou dobu ležely na poličce, protože jsem nevěděla, jak je ovládat. Po další době jsem na to přišla a oba displeje vyzkoušela. Fungují a svítí krásně, no a teďka čekají, na co se asi tak budou dále hodit. Zatím nemám žádný nápad, ale ony se časem hodit budou.
Moje displeje jsou od výrobce Wincor Nixdorf, ale co jsem z informací pochopila, tak všechny pokladní displeje jsou vlastně kompatibilní, liší jen v několika drobnostech.
Displej obsahuje kompletní elektroniku a pro jeho provoz je potřeba pouze napájení 12V a sériová linka RS232. Nadřazený systém se připojuje speciálním kabelem, po kterém je displej i napájen.
Pokud chceme komunikovat s displejem, je nutné jej připojit k počítači. To lze buď přímo, pokud je port v počítači upravený pro toto použití, a nebo pomocí tohoto adaptéru:
Obr.1 - Zapojení adaptéru pro displej
Oba konektory jsou stejné, jedná se o samičky. A propojují se 1:1 není to tedy „null modem“ ani něco podobného. Konektor pro připojení displeje má ještě připojené napájení. Při připojování je potřeba dávat pozor na označení konektorů a připojit do správně. Pokud se prohodí, tak displej jednak nebude napájený a port v počítači by se mohl poškodit. Sice by měl napětí 12V v pohodě vydržet (napětí 12V je totiž normální napěťová úroveň signálů RS232), ale asi bych neriskovala.
Když se počítač s displejem propojí a zapojí se napájení, tak displej provede „self test“ tím, že se na asi sekundy rozsvítí všechny segmenty. Potom zhasnou a displej je připravený k provozu.
Nyní již stačí spustit komunikační program, například Hyperterminál z Windows, nastavit komunikaci a začít psát. Z vlastní zkušenosti říkám, že Hyperterminál není ideální a je lepší použít něco jiného. Na prvotní vyzkoušení však bohatě postačí. Jde o to, že Hyperterminál neumí vyslat ESC sekvenci. Nebo jsem na to nepřišla jak.
Obr.2 - Hotový adaptér
Výchozí nastavení komunikace:
Rychlost linky: 9600 b/s
Parita: ano
Typ: lichá
Řízení komunikace: ano
Typ: RTS/CTS
Nastavení komunikace lze u některých displejů změnit, nevím však, jestli to má nějaký praktický význam.
Displej umí několik příkazů. Příkazy které nezná, prostě ignoruje.
n – číslo parametru
Py – číslo řádku
Px – číslo sloupce
Back space – „Krok zpět“
Kurzor se posune o jeden znak doleva. Pokud je kurzor na prvním znaku řádku, je příkaz ignorován. Případně zobrazený znak na dané pozici zůstane zobrazen, nesmaže se.
Line feed – „Odřádkování“
Kurzor se pousne na další řádek, ale jeho pozice zůstane stejná.
Carriage return - „Návrat vozíku“
Kurzor se posune na začátek řádku. Při psaní dalších znaků jsou ty již zobrazené přepsány.
Delete display – „Vymazání displeje“
Všechny zobrazené znaky se vymaží. Kurzor však zůstává na svém místě.
Positron kursor – „Nastavení pozice kurzoru“
Kurzor se přesune na zadanou pozici. Pozice 1,1 je vlevo nahoře.
Delete do end of line – „Vymazání řádky od kurzoru“
Znak na pozici kurzoru a všechny znaky napravo od kurzoru se vymaží.
Set country identification – „Nastavení kódu země“
Nastavení kódu země, neboli znakové sady. Můj displej tento příkaz ignoruje.
Call display identification – „Zobraz svojí identifikaci“
Displej odpoví svojí identifikací. Zpráva obsahuje typ displeje, číslo verze programu, nastavenou zemi, počet řádek a sloupců.
Formát odeslané zprávy:
ESC[?hodnota1;hodnota2;hodnota3;hodnota;hodnota5c
Hodnota 1 – typ displeje, přičemž 2 znamená VFD
Hodnota 2 – číslo verze řídícího programu
Hodnota 3 – Nastavená znaková sada
Hodnota 4 – Počet řádek
Hodnota 5 – Počet znaků na řádek
Text se odesílá jako prostý text v kódování ASCII, pokud kurzor při psaní znaků narazí na konec řádky, tak se zastaví a další znaky se zapisují na tuto pozici a stále se připisují. Při odřádkování na čtvrtém řádku se celý text posune nahoru, to znamená, že první řádek zmizí, druhý se posune na první, třetí na druhý a čtvrtý na třetí.
Nastavení komunikace s displejem se provádí pomocí propojek, ale ne všechny displeje tyto propojky mají. Je potřeba případně najít potřebnou dokumentaci k tomu kterému displeji.
Číslicové LED displeje by měli mít stejný formát komunikace, ale takový displej nemám a proto tuto informaci nemohu ověřit.
A to je asi tak vše, co se dá o řízení pokladního displeje říci. Řízení je opravdu jednoduché, VFD krásně svítí a jsou opravdu dobře čitelné. Na co použiji já ty svoje ještě nevím, ale ono se něco najde. A dá se s nimi krásně hrát
<
Obr.3 - Pohled na běžící displej
Obr.4 - Ať žiji Žirafoviny
Zpracováno podle informací z konference hw-news, informací na internetu a na stránce http://www.iposltd.com/tech/riva/cdisp01.html
Moje displeje jsou od výrobce Wincor Nixdorf, ale co jsem z informací pochopila, tak všechny pokladní displeje jsou vlastně kompatibilní, liší jen v několika drobnostech.
Displej obsahuje kompletní elektroniku a pro jeho provoz je potřeba pouze napájení 12V a sériová linka RS232. Nadřazený systém se připojuje speciálním kabelem, po kterém je displej i napájen.
Pokud chceme komunikovat s displejem, je nutné jej připojit k počítači. To lze buď přímo, pokud je port v počítači upravený pro toto použití, a nebo pomocí tohoto adaptéru:
Obr.1 - Zapojení adaptéru pro displej
Oba konektory jsou stejné, jedná se o samičky. A propojují se 1:1 není to tedy „null modem“ ani něco podobného. Konektor pro připojení displeje má ještě připojené napájení. Při připojování je potřeba dávat pozor na označení konektorů a připojit do správně. Pokud se prohodí, tak displej jednak nebude napájený a port v počítači by se mohl poškodit. Sice by měl napětí 12V v pohodě vydržet (napětí 12V je totiž normální napěťová úroveň signálů RS232), ale asi bych neriskovala.
Když se počítač s displejem propojí a zapojí se napájení, tak displej provede „self test“ tím, že se na asi sekundy rozsvítí všechny segmenty. Potom zhasnou a displej je připravený k provozu.
Nyní již stačí spustit komunikační program, například Hyperterminál z Windows, nastavit komunikaci a začít psát. Z vlastní zkušenosti říkám, že Hyperterminál není ideální a je lepší použít něco jiného. Na prvotní vyzkoušení však bohatě postačí. Jde o to, že Hyperterminál neumí vyslat ESC sekvenci. Nebo jsem na to nepřišla jak.
Obr.2 - Hotový adaptér
Výchozí nastavení komunikace:
Rychlost linky: 9600 b/s
Parita: ano
Typ: lichá
Řízení komunikace: ano
Typ: RTS/CTS
Nastavení komunikace lze u některých displejů změnit, nevím však, jestli to má nějaký praktický význam.
Displej umí několik příkazů. Příkazy které nezná, prostě ignoruje.
Příkaz | Kód | Hexadecimální kódování příkazu | Dekadické kódování příkazu |
Back space | BS | 08 | 8 |
Line feed | LF | 0A | 10 |
Carriage return | CR | 0D | 13 |
Delete display | ESC[2J | 1B 5B 32 4A | 27 91 50 74 |
Position cursor | ESC[Py;PxH | 1B 5B Py 3B Px 48 | 27 91 Py 59 Px 72 |
Delete to end of line | ESC[0K | 1B 5B 30 4B | 27 91 48 75 |
Set country identification | ESCRn | 1B 52 n | 27 82 n |
Call display identification | ESC[0c | 1B 5B 30 63 | 27 91 48 99 |
n – číslo parametru
Py – číslo řádku
Px – číslo sloupce
Back space – „Krok zpět“
Kurzor se posune o jeden znak doleva. Pokud je kurzor na prvním znaku řádku, je příkaz ignorován. Případně zobrazený znak na dané pozici zůstane zobrazen, nesmaže se.
Line feed – „Odřádkování“
Kurzor se pousne na další řádek, ale jeho pozice zůstane stejná.
Carriage return - „Návrat vozíku“
Kurzor se posune na začátek řádku. Při psaní dalších znaků jsou ty již zobrazené přepsány.
Delete display – „Vymazání displeje“
Všechny zobrazené znaky se vymaží. Kurzor však zůstává na svém místě.
Positron kursor – „Nastavení pozice kurzoru“
Kurzor se přesune na zadanou pozici. Pozice 1,1 je vlevo nahoře.
Delete do end of line – „Vymazání řádky od kurzoru“
Znak na pozici kurzoru a všechny znaky napravo od kurzoru se vymaží.
Set country identification – „Nastavení kódu země“
Nastavení kódu země, neboli znakové sady. Můj displej tento příkaz ignoruje.
Call display identification – „Zobraz svojí identifikaci“
Displej odpoví svojí identifikací. Zpráva obsahuje typ displeje, číslo verze programu, nastavenou zemi, počet řádek a sloupců.
Formát odeslané zprávy:
ESC[?hodnota1;hodnota2;hodnota3;hodnota;hodnota5c
Hodnota 1 – typ displeje, přičemž 2 znamená VFD
Hodnota 2 – číslo verze řídícího programu
Hodnota 3 – Nastavená znaková sada
Hodnota 4 – Počet řádek
Hodnota 5 – Počet znaků na řádek
Text se odesílá jako prostý text v kódování ASCII, pokud kurzor při psaní znaků narazí na konec řádky, tak se zastaví a další znaky se zapisují na tuto pozici a stále se připisují. Při odřádkování na čtvrtém řádku se celý text posune nahoru, to znamená, že první řádek zmizí, druhý se posune na první, třetí na druhý a čtvrtý na třetí.
Nastavení komunikace s displejem se provádí pomocí propojek, ale ne všechny displeje tyto propojky mají. Je potřeba případně najít potřebnou dokumentaci k tomu kterému displeji.
Číslicové LED displeje by měli mít stejný formát komunikace, ale takový displej nemám a proto tuto informaci nemohu ověřit.
A to je asi tak vše, co se dá o řízení pokladního displeje říci. Řízení je opravdu jednoduché, VFD krásně svítí a jsou opravdu dobře čitelné. Na co použiji já ty svoje ještě nevím, ale ono se něco najde. A dá se s nimi krásně hrát
Obr.3 - Pohled na běžící displej
Obr.4 - Ať žiji Žirafoviny
Zpracováno podle informací z konference hw-news, informací na internetu a na stránce http://www.iposltd.com/tech/riva/cdisp01.html
Hodnocení: 0,00 (0 hlasů) - Ohodnotit -
Komentář je vlastnictvím svého autora. Vyjadřuje jeho názory, ne názory redakce nebo provozovatele webu či serveru.
Napsal/a | Vlákno |
---|---|
Host |
Publikováno dne: 8.3.2009. 18:30
|
Odp: Řízení pokladního displeje
Tak hlavně, že nějakou "dobu leželi na poličce". Snad si i "odpočinuli".
|
|
Host |
Publikováno dne: 4.7.2009. 13:43
|
Odp: Řízení pokladního displeje
Pěkné. Mohla bys prosím časem vyzkoušet, jestli lze takovýto pokladní displej nějak (Matrix Orbital?) ovládat programem LCDsmartie? Zde je odkaz.
|
|
Žirafka |
Publikováno dne: 6.7.2009. 13:44
|
Administrátorka
Datum registrace: 04.05.2008
Bydliště: Ústecký kraj
Počet komentářů: 1258
|
Odp: Řízení pokladního displeje
Můžu to zkusit, až budu mít čas. Ale mám pocit, že to asi nepůjde. Uvidím
Teďka se však chystám na tábor, takže není moc času. |