ASCII CHAR - mcworkshop

MC   WORKSHOP
Vai ai contenuti

Menu principale:

ASCII CHAR

Technical Pages
LCD 16x2
Posizione di scrittura
ottobre 2019
1/02/03/04/00/50/60/70/80/910/011/012/013/014/015/016/0
1/12/13/14/15/16/17/18/19/110/111/112/113/114/115/116/1
Nella scrittura dei caratteri all'interno dell'LCD prima viene la posizione, poi la riga. La prima riga è 0, la seconda riga è 1.
es.: (0,0) scrivi il carattere in alto a sinistra della prima riga.
es.: (2,0) scrivi il carattere nella seconda posizione della prima riga.
es.: (2,1) scrivi il carattere nella seconda posizione della seconda riga.

Char
lcd.print((char)xxx);
La tabella indica il DEC Value e il carattere corrispondente.
es.: lcd.print((char)33); l'LCD scrive: punto esclamativo !
es.: lcd.print((char)91); l'LCD scrive: aperta parentisi quadra  [




clic to enlarge

Sketch

#include <LiquidCrystal_I2C.h>
LiquidCrystal_I2C lcd(0x27, 16, 2);
void setup() {
 lcd.init();
 lcd.backlight();
 lcd.setCursor(0, 1);
 lcd.print((char)91); // 91 corrisponde ad aperta quadra [
}
void loop() {
}

Caratteri personalizzati
Ciascun carattere è formato da una griglia di pixel da 5x8




0/43210
1



2



3



4



5



6


7


se vogliamo che il pixel sia spento dobbiamo assegnargli il numero binario 0.
se vogliamo che il pixel sia acceso dobbiamo assegnargli il numero binario 1.

esempio: nella griglia ho disegnato una freccia verso sinistra o il simbolo di minore.
00000
00010
00100
01000
10000
01000
00100
00010


00000
00010
00100
01000
10000
01000
00100
00010
Per poter scrivere i numeri da inserire nel byte MyChar[8] dovete convertire il valore binario in esadecimale.
byte MyChar[8] = {0, 2, 4, 8, 16, 8, 4, 2};

esempio

prima riga: 2^0 = 0
seconda riga: 2^1 = 2
terza riga: 2^2 = 4
quarta riga: 2^ 3 = 8
quinta riga 2^ 4 = 16
sesta riga: 2^3 = 8
settima riga: 2^ 2 = 4
ottava riga: 2^1 = 0



43210
0




1


2^1
    

2

2^2
    


3
2^3
    



42^4
    




5
2^3
    



6

2^2
    


7


2^1
    

00000
0002^1
    
0
002^2
    
00
02^3
    
000
2^4
    
0000
02^3
    
000
002^2
    
00
0002^1
    
0

Sketch

#include <LiquidCrystal_I2C.h>
LiquidCrystal_I2C lcd(0x27, 16, 2);
byte MyChar[8] = {0, 2, 4, 8, 16, 8, 4, 2};
void setup()
{
lcd.init();
lcd.backlight();
lcd.createChar(0, MyChar);
lcd.begin(16, 2);
lcd.write(0);
}
void loop()
{
}
 
Copyright 2015. All rights reserved.
Torna ai contenuti | Torna al menu