Τεχνικό Εγχειρίδιο Πρωτοκόλλου ASCII Επικοινωνίας για LED Πινακίδες γενικής χρήσεως
Έκδοση 1.1 – Απλό ASCII πρωτόκολλο
1. Γενική Περιγραφή
Το παρόν πρωτόκολλο χρησιμοποιείται για την αποστολή μηνυμάτων σε LED πινακίδες, μέσω σειριακής επικοινωνίας (UART ή TCP/IP socket), σε απλή μορφή ASCII χαρακτήρων. Υποστηρίζει τόσο μονής γραμμής όσο και πολλαπλών γραμμών πινακίδες (έως 3 γραμμές).
2. Δομή Μηνύματος
➤ Πινακίδα Μονής Γραμμής
Το μήνυμα αποτελείται μόνο από ASCII χαρακτήρες, και ολοκληρώνεται με τον χαρακτήρα <CR> (Carriage Return, 0x0D) που σηματοδοτεί το τέλος του πακέτου.
Δομή: <Κείμενο_γραμμής><CR>
Παράδειγμα: 0x48 0x45 0x4C 0x4C 0x4F 0x0D → HELLO<CR>
Απάντηση από την πινακίδα: ACK → 0x06 σημαίνει "Πακέτο ελήφθη σωστά"
➤ Πινακίδα Πολλαπλών Γραμμών (2 ή 3 γραμμές)
Το μήνυμα περιέχει πολλαπλές γραμμές, διαχωρισμένες με τον χαρακτήρα <LF> (Line Feed, 0x0A). Η τελευταία γραμμή ολοκληρώνεται με <CR> (0x0D).
Δομή: <Γραμμή1><LF><Γραμμή2><LF><Γραμμή3><CR>
- Οι πινακίδες 2 γραμμών στέλνουν 2 γραμμές (η 2η ακολουθείται από <CR>)
- Οι πινακίδες 3 γραμμών στέλνουν 3 γραμμές (η 3η ακολουθείται από <CR>)
Παράδειγμα (3 γραμμών):
0x41 0x42 0x43 0x0A → ABC<LF>
0x44 0x45 0x46 0x0A → DEF<LF>
0x47 0x48 0x49 0x0D → GHI<CR>
Παράδειγμα (2 γραμμών):
0x4C 0x49 0x4E 0x45 0x31 0x0A → LINE1<LF>
0x4C 0x49 0x4E 0x45 0x32 0x0D → LINE2<CR>
3. Χαρακτήρες Ελέγχου
Χαρακτήρας |
Περιγραφή |
ASCII |
Hex |
<LF> |
Line Feed – Νέα γραμμή |
10 |
0x0A |
<CR> <ACK> |
Carriage Return – Τέλος πακέτου Απάντηση από την πινακίδα: "Πακέτο ελήφθη σωστά" |
13 6 |
0x0D 0x06 |
4. Παρατηρήσεις
- Όλοι οι χαρακτήρες του μηνύματος πρέπει να είναι έγκυροι ASCII (0x20–0x7E).
- Η πινακίδα αγνοεί οποιοδήποτε μήνυμα δεν τερματίζεται με <CR>.
- Αν η πινακίδα είναι ρυθμισμένη σε λειτουργία μονής γραμμής, τότε αγνοούνται τυχόν <LF> χαρακτήρες.
- Σε λειτουργία πολλαπλών γραμμών, αν το πακέτο περιλαμβάνει λιγότερες γραμμές από τον ορισμένο αριθμό, οι υπόλοιπες γραμμές θεωρούνται κενές.
5. Παραδείγματα Χρήσης
Παράδειγμα 1 – Μονή γραμμή:
HELLO WORLD<CR>
Παράδειγμα 2 – Πινακίδα 3 γραμμών:
TEMP: 25C<LF>
HUM: 40%<LF>
STATUS: OK<CR>