Maroon Shield/Protokoll

Aus Nibo Wiki
Wechseln zu: Navigation, Suche

Das maroon SHIELD zeigt UNICODE und damit auch ASCII Texte auf dem 8x8 Display an. Um spezielle Funktionen zu aktivieren kann man die unten aufgeführten Escape-Sequenzen zum Display schicken.

[ESC] Ascii Escape Zeichen (hexadezimal: 0x1b / dezimal: 27)
[DLE] Ascii Data  Link Escape Zeichen (hexadezimal: 0x10 / dezimal: 16)
{n} einzelne Ziffer
{c} einzelnes Zeichen
{xxx} mehrere Zeichen
<*> implementiert
< > (noch) nicht implementiert



Serielle Parameter

38400 baud, 8 bit, no parity, 1 stop bit

stream commands

<*> [ESC]c - clear display
< > [ESC]r - repeat begin
< > [ESC]s - repeat start
<*> [ESC]b{n} - set matrix brightness to n=[0-9: 0-90%, *: 100%]
<*> [ESC]d{n} - dimm matrix brightness to n=[0-9: 0-90%, *: 100%]
< > [ESC]o{c} - set matrix orientation c=[n,w,e,s: North, West, East, South]
<*> [ESC]t{c} - transmit back char (synchronisation) c=[ASCII char]
<*> [ESC]l - load next matrix bytes without delay
    font modifiers:
<*> [ESC]e1 - economy font size (3×6)
<*> [ESC]e0 - normal font size (5×8)
< > [ESC]i1 - inverted output
< > [ESC]i0 - noninverted output
< > [ESC]p1 - proportional mode
< > [ESC]p0 - fixed width mode


<*> [ESC]B{xxxxxxxx}[SPACE] - Bargraph mode, every char is a colon, terminated by space
<*> [ESC]G{xxxxxxxx}[SPACE] - Grafic mode, bytes are hexadecimal encoded, terminated by space
<*> [ESC]P{xxx}[SPACE] - Pause given time in miliseconds
<*> [ESC]S{xxx}[SPACE] - set shift delay time (ms)
<*> [ESC]D{xxx}[SPACE] - set matrix dimm transition time (ms)
<*> [ESC]T{n}{xxx}[SPACE] - matrix dimm transition value and time
< > [ESC]X{xxx}[SPACE] - hexadecimal to decimal conversion


immediate commands

<*> [DLE]c - clear and reset display
<*> [DLE]d{n} - set matrix dimm value to n=[1-9: 10-90%, 0: 100%]
< > [DLE]o{c} - set matrix orientation c=[n,w,e,s: North, West, East, South]


examples

display chess pattern without scrolling
  short: "\33l\33Gaa55aa55aa55aa55 "
  alt:   MAROON_LOAD() MAROON_GFX("aa55aa55aa55aa55")
fade in question mark over 1 second, wait 1 second, fade out 1 second  
  short: "\33d0\33l?\33T*100 \33P1000 \33T0100 \33d*"
  alt:   MAROON_DIM(0) MAROON_LOAD() "?" MAROON_TRANSITION(*, 100) MAROON_PAUSE(1000) MAROON_TRANSITION (0,100) MAROON_DIM (*)
 
print "hello" and send back "!" over uart
  short: "hello\33t!"
 
 

Bargraph mode

'0'-'8' single dot
'a'-'i' bar ascending
'i'-'q' bar descending
'A'-'E' center bar fading in
'E'-'I' center bar fading out