- LiquidCrystal()
Descripció:
Crea una variable del tipus CristallLíquid. Que pot ser controlat per 4 o 8 pins. Nosaltres utilitzem de d4 a d7, connectant RW a massa (GND).
Sintaxis:
LiquidCrystal(rs, enable, d4, d5, d6, d7)
Paràmetres:
rs: el número de pin de l'Arduino que està connectat al pin RS de la LCD
enable: el número de pin de l'Arduino que està connectat al pin enable (E) de la LCD
d4, d5, d6, d7: els pins de l'Arduino que estan connectats al corresponent pin de la LCD
Exemple:
#include <LiquidCrystal.h> LiquidCrystal lcd(12, 11, 10, 5, 4, 3, 2); void setup() { lcd.print("hello, world!"); } void loop() {}
- begin()
Descripció:
Especifica la dimensió (amplada i alçada) del display.
Sintaxis:
lcd.begin(cols, rows)
Paràmetres:
lcd: una variable del tipus CristallLíquid
cols: el nombre de columnes que té el display (nosaltres tenim 16 normalment)
rows: el nombre de files que té el display (nosaltres normalment 2)
- clear()
Descripció:
Neteja la LCD i col·loca el cursor a la part superior esquerre
Sintaxis:
lcd.clear()
- home()
Descripció:
Col·loca el cursor a la part superior esquerre de la LCD, es a dir, s'utilitza per tornar a escriure alguna cosa a la LCD des del principi
Sintaxis:
lcd.home()
- setCursor()
Descripció:
Posicionament del cursor; es a dir, indica on vols que comenci a escriure el següent text.
Sintaxis:
lcd.setCursor(col, row)
Paràmetres:
lcd: una variable del tipus CristallLíquid
cols: la columna a la que vols que escrigui (amb 0 comença la primera columna)
rows: la fila a la que vols que escrigui (amb 0 comença la primera fila)
- write()
Descripció:
Escriu un caràcter a la LCD
Sintaxis:
lcd.write(data)
Paràmetres:
lcd: una variable del tipus CristallLíquid
data: el caràcter que s'haurà d'escriure
Exemple:
#include <LiquidCrystal.h>
LiquidCrystal lcd(12, 11, 10, 5, 4, 3, 2);
void setup()
{
Serial.begin(9600);
}
void loop()
{
if (Serial.available()) {
lcd.write(Serial.read());
}
}
LiquidCrystal lcd(12, 11, 10, 5, 4, 3, 2);
void setup()
{
Serial.begin(9600);
}
void loop()
{
if (Serial.available()) {
lcd.write(Serial.read());
}
}
- print()
Descripció:
Escriu text a la LCD.
Sintaxis:
lcd.print(data)
lcd.print(data, BASE)
lcd.print(data, BASE)
Paràmetres:
BASE (opcional): la base en la qual escriure el text: BIN per a binari (base 2), DEC per a decimal (base 10), OCT per a octal (base 8), HEX per a hexadecimal (base 16).
Exemple:
#include <LiquidCrystal.h>
LiquidCrystal lcd(12, 11, 10, 5, 4, 3, 2);
void setup()
{
lcd.print("hello, world!");
}
void loop() {}
LiquidCrystal lcd(12, 11, 10, 5, 4, 3, 2);
void setup()
{
lcd.print("hello, world!");
}
void loop() {}
- cursor()
Descripció:
Dibuixa el cursor ("_"): una linia inferior a la posició on el següent caràcter anirà escrit. Va bé per entendre com anirà escrivint la LCD al passar de files o columnes.
Sintaxis:
lcd.cursor()
- noCursor()
Descripció:
Amaga el cursor.
Sintaxis:
lcd.noCursor()
Exemple:
LiquidCrystal lcd(12, 11, 5, 4, 3, 2);
void setup() {
// Configura la LCD
lcd.begin(16, 2);
// Escriu un missatge:
lcd.print("hello, world!");
}
void loop() {
// Apaga el cursor:
lcd.noCursor();
delay(500);
// Encén el cursor:
lcd.cursor();
delay(500);
}
void setup() {
// Configura la LCD
lcd.begin(16, 2);
// Escriu un missatge:
lcd.print("hello, world!");
}
void loop() {
// Apaga el cursor:
lcd.noCursor();
delay(500);
// Encén el cursor:
lcd.cursor();
delay(500);
}
- blink()
Descripció:
Mostra el cursor, però encenent i apagant tot el rectangle de píxels on està el cursor.
Sintaxis:
lcd.blink()
- noBlink()
Descripció:
Amaga tot el cursor.
Sintaxis:
lcd.noBlink()
Exemple:
LiquidCrystal lcd(12, 11, 5, 4, 3, 2);
void setup() {
// configura la LCD:
lcd.begin(16, 2);
// Escriu un text de mostra.
lcd.print("hello, world!");
}
void loop() {
// apaga el cursor:
lcd.noBlink();
delay(3000);
// encén el cursor:
lcd.blink();
delay(3000);
}
void setup() {
// configura la LCD:
lcd.begin(16, 2);
// Escriu un text de mostra.
lcd.print("hello, world!");
}
void loop() {
// apaga el cursor:
lcd.noBlink();
delay(3000);
// encén el cursor:
lcd.blink();
delay(3000);
}
- display()
Descripció:
Encén el display, s'utilitza després d'apagar-lo amb la funció noDisplay(). Tornarà a encendre el text (i el cursor) que estaven escrits a la pantalla.
Sintaxis:
lcd.display()
- noDisplay()
Descripció:
Apaga la pantalla de la LCD, no es perd cap contingut que estava escrit.
Sintaxis:
lcd.noDisplay()
Exemple:
LiquidCrystal lcd(12, 11, 5, 4, 3, 2);
void setup() {
// Configura la LCD:
lcd.begin(16, 2);
// Escriu alguna cosa.
lcd.print("hello, world!");
}
void loop() {
// Apaga la pantalla:
lcd.noDisplay();
delay(500);
// Encén la pantalla:
lcd.display();
delay(500);
}
void setup() {
// Configura la LCD:
lcd.begin(16, 2);
// Escriu alguna cosa.
lcd.print("hello, world!");
}
void loop() {
// Apaga la pantalla:
lcd.noDisplay();
delay(500);
// Encén la pantalla:
lcd.display();
delay(500);
}
- scrollDisplayLeft()
Descripció:
Mou tot el text (i cursor) de la pantalla una posició a la esquerre.
Sintaxis:
lcd.scrollDisplayLeft()
- scrollDisplayRight()
Descripció:
Mou tot el text (i cursor) de la pantalla una posició a la dreta.
Sintaxis:
lcd.scrollDisplayRight()
Exemple:
LiquidCrystal lcd(12, 11, 5, 4, 3, 2);
void setup() {
// Configura la LCD:
lcd.begin(16, 2);
// Escriu alguna cosa.
lcd.print("hello, world!");
delay(1000);
void setup() {
// Configura la LCD:
lcd.begin(16, 2);
// Escriu alguna cosa.
lcd.print("hello, world!");
delay(1000);
// Espera't un segon.
}
void loop() {
// mou-te 13 posposició (llargada del text) a l'esquerra
// per a fer-lo desaparèixer de la pantalla:
for (int positionCounter = 0; positionCounter < 13; positionCounter++) {
// mou una posició a la esquerra:
lcd.scrollDisplayLeft();
// espera't un moment:
delay(150);
}
// mou-te 29 posicions (llargada del text + llargada de la pantalla) to the right
// fes desaparèixer el text pel costat dret:
for (int positionCounter = 0; positionCounter < 29; positionCounter++) {
// mou una posició a la dreta:
lcd.scrollDisplayRight();
// espera una mica:
delay(150);
}
// mou el text 16 posicions(llargada de la pantalla + llargada del text) cap a la esquerra
// per a posar-ho de nou al centre:
for (int positionCounter = 0; positionCounter < 16; positionCounter++) {
// mou una posició a l'esquerre:
lcd.scrollDisplayLeft();
// espera't un moment:
delay(150);
}
// espera't un segon al final de tot el codi:
delay(1000);
}
void loop() {
// mou-te 13 posposició (llargada del text) a l'esquerra
// per a fer-lo desaparèixer de la pantalla:
for (int positionCounter = 0; positionCounter < 13; positionCounter++) {
// mou una posició a la esquerra:
lcd.scrollDisplayLeft();
// espera't un moment:
delay(150);
}
// mou-te 29 posicions (llargada del text + llargada de la pantalla) to the right
// fes desaparèixer el text pel costat dret:
for (int positionCounter = 0; positionCounter < 29; positionCounter++) {
// mou una posició a la dreta:
lcd.scrollDisplayRight();
// espera una mica:
delay(150);
}
// mou el text 16 posicions(llargada de la pantalla + llargada del text) cap a la esquerra
// per a posar-ho de nou al centre:
for (int positionCounter = 0; positionCounter < 16; positionCounter++) {
// mou una posició a l'esquerre:
lcd.scrollDisplayLeft();
// espera't un moment:
delay(150);
}
// espera't un segon al final de tot el codi:
delay(1000);
- autoscroll()
Descripció:
Activa el desplaçament automàtic de la pantalla LCD. Això fa que cada sortida de caràcter a la pantalla empenyi els anterior sobre una posició. Si la direcció del text actual es desplaça d'esquerra a dreta (per defecte), la pantalla es desplaça cap a l'esquerre, i si la direcció actual és de dreta a esquerra, la pantalla es desplaça cap a la dreta. Això te l'efecte de la sortida de cada nou caràcter en la mateixa ubicació de la pantalla de la LCD.
Sintaxis:
lcd.autoscroll()
- noAutoscroll()
Descripció:
Desactiva la funció Autoscroll().
Sintaxis:
lcd.noAutoscroll()
- leftToRight()
Descripció:
Configura la direcció en la qual s'escriu el text sobre la LCD, per defecte esquerra a dreta.
Sintaxis:
lcd.leftToRight()
- rightToLeft()
Descripció:
Configura la direcció en la qual s'escriu el text sobre la LCD, en aquest cas, de dreta esquerre.
Sintaxis:
lcd.rightToLeft()
- createChar()
Descripció:
Crea un caràcter personalitzat per a utilitzar-lo a la pantalla. Fins a 8 caràcters de 5x8 píxels són compatibles (numerats del 0 al 7). L'aparició de cada caràcter personalitzat s'especifica per una sèrie de vuit bytes, un per a cada fila. Els cinc bits menys significatius de cada byte determinen els píxels en aquesta fila. Per mostrar un caràcter personalitzat a la pantalla, s'ha d'utilitzar write() i el seu nom.
Quan ens referim al caràcter "0", si no està disponible, necessitarem projectar-lo com un byte, en cas contrari el compilador genera un error. Vegeu l'exemple següent.
Sintaxis:
lcd.createChar(num, data)
Paràmetres:
lcd: una variable del tipus CristallLíquid
num: quin caràcter crear (de 0 a 7)
data: les dades dels píxels del caràcter
Exemple:
#include <LiquidCrystal.h> LiquidCrystal lcd(12, 11, 5, 4, 3, 2); byte smiley[8] = { B00000, B10001, B00000, B00000, B10001, B01110, B00000, }; void setup() { lcd.createChar(0, smiley); lcd.begin(16, 2); lcd.write(byte(0)); } void loop() {}
Aquest caràcter dibuixarà una cara rient.
Cap comentari:
Publica un comentari a l'entrada