Protocollo seriale di comunicazione per la scheda SXLCD Versione

Transcript

Protocollo seriale di comunicazione per la scheda SXLCD Versione
AREA SX S.r.l.
ViaStefano Longanesi 25
00146 - Roma
Tel: +39.06.99.33.02.57 - Fax: +39.06.62.20.27.85
Cap. Soc. 11.000 € i.v.
C.C.I.A.A. Roma 971371
Reg,Imprese Roma 064911510004
Codice Fiscale e P.IVA 06491151004
Protocollo seriale di comunicazione per la scheda SXLCD
Versione 1.03
La scheda SXLCD utilizza un protocollo seriale con velocità a 19200 baud, 8 bit di dati, nessuna parità e
1 bit di stop.
La comunicazione avviene in una unica direzione, dal "master" (PC o microprocessore che pilota la
scheda) verso la SXLCD; non c'è quindi alcun ritorno ai comandi inviati.
In questo modo si ha la possibilità di collegare alla linea seriale più di un display (fino a 32) che può
essere pilotato indipendentemente dagli altri.
Tutti i comandi inviabili alla SXLCD sono composti da almeno 6 bytes, ad eccezione di quelli di scrittura a
cui vanno aggiunti i dati relativi al testo da visualizzare sulla riga del display.
Byte
0
1
2
3
4
[5...N-1]
N
Identificativo
>
ADR
CMD
Data1
Data2
Testo
END
Valore
0x3E
0x00
Note
Identificativo di inizio pacchetto domanda
Indirizzo del ricevente
Comando da eseguire
Byte dati numero 1
Byte dati numero 2
Facoltativo/i
Fine Pacchetto
Sito Web http://www.areasx.com – E-mail [email protected]
1/5
AREA SX S.r.l.
ViaStefano Longanesi 25
00146 - Roma
Tel: +39.06.99.33.02.57 - Fax: +39.06.62.20.27.85
Cap. Soc. 11.000 € i.v.
C.C.I.A.A. Roma 971371
Reg,Imprese Roma 064911510004
Codice Fiscale e P.IVA 06491151004
Comandi
Tutti i comandi iniziano con il carattere '>' seguito dall'indirizzo assegnato alla scheda SXLCD che può
avere un valore compreso tra 1 e 254. L'indirizzo 255 (0xFF) è di broadcast e serve per inviare il
medesimo comando a tutte le schede collegate allo stesso bus seriale, indipendentemente dall'indirizzo
loro assegnato.
Il byte successivo a quello di indirizzo (byte numero 3) è quello che permette di specificare il tipo di
operazione che si vuole effettuare sul display.
I byte successivi al comando (byte 4 e 5) servono per specificare parametri opzionali; se il comando non
li richiede vanno impostati al valore 0x00.
I byte seguenti possono o non possono essere presenti, in base ai dati richiesti dallo specifico comando:
l'ultimo byte deve comunque essere un byte nullo (0x00) per segnalare il termine del pacchetto dati alla
scheda.
Di seguito vengono analizzati in dettaglio i singoli comandi.
0x01 – Cancellazione del display
Questo comando cancella tutte le righe attualmente visualizzate dal display
Numero
0
1
2
3
4
5
Identificativo
>
ADR
CMD
Data1
Data2
END
Valore
0x3E
0xXX
0x01
0x00
0x00
0x00
Note
Indirizzo della Scheda (0xFF per il broadcast)
0x02 – Scrittura di un messaggio alla posizione corrente
Questo comando scrive il testo passato partendo dall'ultima posizione in cui si è scritto
precedentemente. Se il messaggio raggiunge il limite destro del display il comportamento sarà
determinato dall'impostazione dell'"a capo" (vedi il comando 0x08)
Numero
0
1
2
3
4
[5...N-1]
N
Identificativo
>
ADR
CMD
Data1
Data2
Testo
END
Valore
0x3E
0xXX
0x02
0x00
0x00
Messaggio
0x00
Note
Indirizzo della Scheda (0xFF per il broadcast)
Sito Web http://www.areasx.com – E-mail [email protected]
2/5
AREA SX S.r.l.
ViaStefano Longanesi 25
00146 - Roma
Tel: +39.06.99.33.02.57 - Fax: +39.06.62.20.27.85
Cap. Soc. 11.000 € i.v.
C.C.I.A.A. Roma 971371
Reg,Imprese Roma 064911510004
Codice Fiscale e P.IVA 06491151004
0x03 – Scrittura di un messagiio alla posizione specificata
Questo comando scrive il messaggio partendo dalla posizione specificata dai byte 3 e 4. Il Byte 3 indica
il numero di colonna da cui iniziare a scrivere e può avere valori compresi tra 0 e il numero massimo di
caratteri per riga supportati dal display. Il Byte 4 indica invece il numero di riga, i cui valori vanno da 0
(prima riga) fino al numero massimo di righe del display meno 1. Per un display a 4 righe l'ultima riga
sarà quindi la numero 3.
Numero
0
1
2
3
4
[5...N-1]
N
Identificativo
>
ADR
CMD
Data1
Data2
Testo
END
Valore
0x3E
0xXX
0x03
0xXX
0xXX
Messaggio
0x00
Note
Indirizzo della Scheda (0xFF per il broadcast)
Numero colonna
Numero riga
0x04 – Impostazione backlight
Questo comando consente di definire il livello di luminosità della retroilluminazione. Il valore da
impostare viene inviato nel byte 3 e può assumere valori da 0 (retroilluminazione spenta) fino a 255
(retroilluminazione alla massima luminosità). La luminosità varia con continuità impostando valori
intermedi, in modo da consentire il miglior compromesso tra visibilità e consumo.
Numero
0
1
2
3
4
5
Identificativo
>
ADR
CMD
Data1
Data2
BYT3
Valore
0x3E
0xXX
0x04
0xXX
0x00
0x00
Note
Indirizzo della Scheda (0xFF per il broadcast)
Livello luminosità
Sito Web http://www.areasx.com – E-mail [email protected]
3/5
AREA SX S.r.l.
ViaStefano Longanesi 25
00146 - Roma
Tel: +39.06.99.33.02.57 - Fax: +39.06.62.20.27.85
Cap. Soc. 11.000 € i.v.
C.C.I.A.A. Roma 971371
Reg,Imprese Roma 064911510004
Codice Fiscale e P.IVA 06491151004
0x05 – Impostazione dell'indirizzo della scheda
Questo comando permette di impostare l'indirizzo software alla SXLCD. E' possibile inviare questo
comando sia ad una singola scheda, sia a tutte le schede collegate alla seriale, utilizzando l'indirizzo di
broadcast. In questo modo è possibile reimpostare l'indirizzo di una scheda; l'operazione va effettuata
scollegando dal bus seriale tutte le schede eccetto di quella che si vuole configurare.
Il nuovo indirizzo specificato nel Byte 3 può assumere un valore compreso tra 1 e 254 (0x1 - 0xFE in
esadecimale).
La modifica dell'indirizzo viene memorizzata in maniera permanente e non viene quindi persa quando si
scollega l'alimentazione.
Numero
0
1
2
3
4
5
Identificativo
>
ADR
CMD
Data1
Data2
END
Valore
0x3E
0xXX
0x05
0xXX
0x00
0x00
Note
Indirizzo della Scheda (0xFF per il broadcast)
Nuovo Indirizzo della Scheda
0x06 – Impostazione della modalità di visualizzazione del cursore
Questo comando configura la modalità di visualizzazione del cursore sul display.
Le possibili opzioni, da inserire nel Byte 3, sono:
- 0x00 cursore non visibile
- 0x01 cursore fisso
- 0x02 cursore lampeggiante
Numero
0
1
2
3
4
5
Identificativo
>
ADR
CMD
Data1
Data2
END
Valore
0x66
0xXX
0x06
0xXX
0x00
0x00
Note
Indirizzo della Scheda (0xFF per il broadcast)
Modalità
Sito Web http://www.areasx.com – E-mail [email protected]
4/5
AREA SX S.r.l.
ViaStefano Longanesi 25
00146 - Roma
Tel: +39.06.99.33.02.57 - Fax: +39.06.62.20.27.85
Cap. Soc. 11.000 € i.v.
C.C.I.A.A. Roma 971371
Reg,Imprese Roma 064911510004
Codice Fiscale e P.IVA 06491151004
0x07 – Configurazione dei parametri del Display
Questo comando consente di impostare i parametri fondamentali del display LCD collegato alla scheda.
Il comando va specificato con 5 parametri che rappresentano:
Byte 3: Indirizzo della riga 1 del display
Byte 4: Indirizzo della riga 2 del display
Byte 5: Indirizzo della riga 3 del display (se non presente va inviato 0xFF)
Byte 6: Indirizzo della riga 4 del display (se non presente va inviato 0xFF)
Byte 7: Numero di righe e colonne del display. Il formato è YYYXXXXX, dove YYY = numero di righe,
XXXXX = numero di colonne.
Il comando viene memorizzato in maniera permanente e quindi deve essere impartito una sola volta.
Numero
0
1
2
3
4
5
6
7
8
Identificativo
>
ADR
CMD
Data1
Data2
Data3
Data4
Data5
END
Valore
0x3E
0xXX
0x07
0xXX
0xXX
0xXX
0xXX
0xXX
0x00
Note
Indirizzo della Scheda (0xFF per il broadcast)
Indirizzo riga 1
Indirizzo riga 2
Indirizzo riga 3
Indirizzo riga 4
Numero di righe e di colonne
0x08 – Impostazione modalità di “a capo” automatico
Questo comando consente di decidere la modalità con la quale sarà gestito l'"a capo" dal display.
Il Byte 3 può assumere i valori 0x00 (a capo disabilitato) oppure 0x01 (a capo abilitato).
Quando l'a capo è abilitato l'invio di un testo da scrivere che oltrepassi il lato destro del display farà si
che la parte eccedente di testo venga scritta sulla riga seguente. Se la riga è l'ultima la parte eccedente
verrà scritta sulla prima riga del display. Quando l'a capo è disabilitato il testo viene scritto fino al
margine destro del display e la parte eccedente viene persa.
Il comando viene memorizzato in maniera permanente e quindi l'impostazione non viene persa quando
si spegne la scheda.
Numero
0
1
2
3
4
5
Identificativo
>
ADR
CMD
Data1
Data2
END
Valore
0x3E
0xXX
0x08
0xXX
0x00
0x00
Note
Indirizzo della Scheda (0xFF per il broadcast)
Modalità
Sito Web http://www.areasx.com – E-mail [email protected]
5/5