Innholdsfortegnelse:
2025 Forfatter: John Day | [email protected]. Sist endret: 2025-01-13 06:58
Hovedmålet vårt her er å vise driften av den serielle i2c -modulen for LCD -skjerm 2x16 eller 20x4. Med denne modulen kan vi kontrollere skjermene nevnt ovenfor mens vi bare bruker to pinner (SDA og SCL). Dette gjør kommunikasjonen veldig enkel og frigjør flere av våre mikrokontroller GPIOer.
La oss vise operasjonen på både UNO og ESP8266 Arduino. Sjekk det ut!
Trinn 1: Arduino Uno
Trinn 2: WiFi ESP8266 NodeMcu ESP-12E
Trinn 3: 16x2 seriell LCD -skjerm
Trinn 4: I2c seriemodul
I denne delen viser vi adapteren som ble kjøpt separat. Vi sveiset displayet, som er parallelt, bak. Gjennom i2c -pinnene vil skjermen da kommunisere direkte med Arduino. Derfor, gjennom en mikrokontroller, vil denne Arduino administrere alle kommandoene til skjermen, noe som letter både tilkoblingen og programmeringen.
Trinn 5: I2c seriemodul koblet til LCD -skjermen
Trinn 6: Montering med Arduino
Trinn 7: Montering med ESP8266
Trinn 8: Bibliotek
Legg til "LiquidCrystal_I2C" -biblioteket for kommunikasjon med LCD -skjermen.
Gå til lenken og last ned biblioteket.
Pakk ut filen og lim den inn i bibliotekmappen i Arduino IDE.
C: / Program Files (x86) / Arduino / libraries
Trinn 9: Kildekode
Vi starter med å definere bibliotekene og konstantene vi skal bruke med koden vår.
#include // responsável pela comunicação com et grensesnitt i2c
#include / > Baklys LIGADO | NEGATIV>> Bakgrunnsbelysning desligado LiquidCrystal_I2C lcd (0x27, 2, 1, 0, 4, 5, 6, 7, 3, POSITIV);
Oppsett
Her vil vi bare initialisere objektet vårt for kommunikasjon med displayet.
ugyldig oppsett ()
{// inicializa o display (16 colunas x 2 linhas) lcd.begin (16, 2); // ou 20, 4 se for o display 20x4}
Løkke
Programmet vårt får displayet til å blinke hvert 1. Dette er et enkelt program som allerede involverer alt vi trenger for å kommunisere med displayet.
Slå på / av bakgrunnsbelysning, plasser markøren for skriving.
hulrom ()
{// acende o backlight do LCD lcd.setBacklight (HIGH); // posiciona o cursor para escrita //.setCursor(coluna, linha) lcd.setCursor (0, 0); lcd.print ("FERNANDOK. COM"); lcd.setCursor (0, 1); lcd.print ("ACESSE !!!"); forsinkelse (1000); // intervalo de 1s // desliga o backlight do LCD lcd.setBacklight (LOW); forsinkelse (1000); // intervalo de 1s}