Søge
Luk dette søgefelt.

Mestring af 16×2 LCD-modulet: I2C LCD1602 med Arduino

Indholdsfortegnelse

Denne artikel dykker ned i verden af LCD-skærme, og fokuserer specifikt på det populære 16×2-karakters LCD-modul og dets integration med Arduino ved hjælp af I2C-grænsefladen. Hvis du ønsker at tilføje et visuelt display til dine projekter, er det vigtigt at forstå, hvordan du bruger 16×2 LCD-modulet. Denne guide vil lede dig gennem alt, hvad du behøver at vide, fra det grundlæggende i LCD-modulet til brug af I2C-kommunikation, hvilket gør dette til en værdifuld læsning for både begyndere og erfarne.

1602 LCD-moduldisplay

1. Hvad er en LCD-skærm, og hvorfor bruge en 16×2 tegn LCD?

En LCD, eller flydende krystal skærm, er en fladskærmsteknologi, der bruges i en række forskellige enheder, fra digitale ure til computerskærme. De er populære på grund af deres lave strømforbrug og relativt lave omkostninger. Når du arbejder på elektronikprojekter, især med mikrocontrollere som Arduino, er en LCD-skærm en fantastisk måde at give feedback og vise information til brugeren. LCD-skærmen med 16×2 tegn er en specifik type LCD, der kan vise 16 tegn i hver af dens 2 rækker, hvilket gør den ideel til visning af tekst og numeriske data. Denne type skærm bruger en punktmatrix til at danne tegnene, som er perfekt til en række forskellige projekter. De 16×2 lcd display tilbyder en enkel, effektiv måde at vise en eller flere linjer med information på, og det er det perfekte valg, når en mere sofistikeret grafisk visning ikke er påkrævet. Det er meget brugervenligt og nemt at integrere i forskellige elektroniske kredsløb.

LCD-skærmen på 16×2 tegn er en fast bestanddel i gør-det-selv-elektronik, fordi den er nem at bruge og ikke kræver mange ressourcer fra den kontrollerende enhed, såsom en arduino. Sammenlignet med andre skærme tilbyder 16×2 LCD en god balance mellem funktionalitet, brugervenlighed og omkostninger. Du vil ofte finde denne type lcd i forskellige projekter, hvor det er vigtigt at vise data tydeligt. Det begrænsede antal tegn, som denne lcd-skærm kan vise, opvejes ofte af de lave omkostninger og den nemme betjening, hvorfor den stadig er meget populær. Med muligheden for at justere kontrasten og baggrundsbelysningen giver 16×2-skærmen klar og læsbar tekst, som er en nøglekomponent til enhver skærm.

2. Hvad er et LCD1602-modul, og hvad er dets vigtigste funktioner?

LCD1602-modulet er en specifik implementering af LCD-skærmen med 16×2 tegn. "1602" refererer til dets 16 tegn gange 2 rækker med tekstvisningskapacitet. Disse lcd-moduler er bygget op omkring en controller, typisk HD44780 eller en kompatibel controller, der håndterer visningen af tegnene og styringen af baggrundsbelysningen. LCD1602-modulet har typisk 16 ben, som bruges til strøm, jord, data, kontrol og baggrundsbelysning. Når de bruges uden I2C, kan disse mange stifter være svære at tilslutte, hvorfor i2c-adapteren er en populær tilføjelse. De har også mulighed for at vise en række forskellige symboler, ikke kun bogstaver og tal, og giver en høj grad af kontrol over, hvad der vises på LCD-skærmen.

Nøglefunktioner ved LCD1602-modulet inkluderer dets evne til at vise tegn og strenge, baggrundsbelysningsfunktionaliteten ofte med en blå baggrund og den justerbare kontrast for optimal visning. Baggrundsbelysningen gør det nemt at bruge en lcd-skærm selv under dårlige lysforhold. Baggrundsbelysningen af lcd1602-modulet er typisk implementeret med LED, der giver et klart, lyst output. En af de vigtige ting at huske er, at tallet 1602 betyder, at dette modul kan vise 16 tegn i 2 rækker. Tegnvisningsfunktionaliteten gør den perfekt til at vise data klart for brugeren. Displaytegnene er en sæt 5×7 eller 5×11 punktmatrix, som definerer formen på hvert bogstav, tal eller symbol.

3. Hvad er I2C-grænsefladen, og hvorfor bruge den med et LCD1602-modul?

I2C-grænsefladen (Inter-Integrated Circuit) er en seriel kommunikationsprotokol, der tillader flere enheder at kommunikere med en mikrocontroller ved hjælp af kun to ledninger. Disse ledninger er typisk mærket som SDA (Serial Data) og SCL (Serial Clock). Brug af I2C med et LCD1602-modul forenkler ledningsprocessen drastisk. Normalt kræver LCD1602-modulet mange ben, hvilket kan være en udfordring, når man arbejder med mikrocontroller-projekter med begrænset pin-tilgængelighed. i2c-grænsefladen muliggør brugen af kun 2 ben og strøm og gnd i stedet for mange, hvilket gør projekterne lettere at bygge og mindre tilbøjelige til ledningsfejl. Dette gøres ved at have en separat chip eller et i2c-modul fastgjort på bagsiden af lcd'en, der fungerer som broen.

I2C-grænsefladen fungerer gennem et master-slave-forhold, hvor masteren (ofte mikrocontrolleren, såsom en Arduino) initierer kommunikation med slave-enhederne (såsom I2C LCD1602-modulet). Hver I2C-enhed har en unik I2C-adresse, som gør det muligt for mikrocontrolleren at kommunikere med den specifikke enhed. Den serielle kommunikationsprotokol for I2C forenkler hardwareopsætningen i høj grad og gør det nemmere at integrere lcd1602 med Arduino. Uden i2c-modulet styres en LCD1602 af d4-d7-porte på arduinoen og skal bruge mange ben fra mikrocontrolleren.

4. Hvordan fungerer I2C LCD1602-modulet?

I2C LCD1602-modulet kombinerer funktionaliteten fra 16×2 LCD med en I2C-interfaceadapter. i2c-adapteren eller rygsækken er sædvanligvis fastgjort til bagsiden af lcd'en, hvilket konverterer den traditionelle parallelle kommunikation af LCD'et til en seriel I2C-kommunikation. Dette betyder, at i stedet for at Arduino eller raspberry pi skal bruge flere digitale ben til at kommunikere med skærmen, bruger mikrocontrolleren kun I2C SDA- og SCL-linjerne, hvilket forenkler ledningsføringen betydeligt. Det reducerer også antallet af porte på arduinoen, der bruges til lcd'en, og frigør dem til andre komponenter eller sensorer, der skal bruges i projektet.

I2C-controlleren på I2C-modulet modtager kommandoer og data sendt af mikrocontrolleren gennem i2c-interfacet. Den oversætter derefter disse kommandoer og data til signaler, som tegnets LCD forstår for at styre visningen af tegnene. I2C LCD1602-modulet indeholder den nødvendige logik til at styre LCD'ens baggrundsbelysning, kontrast og visningen af tegn i punktmatrixen. Baggrundslyset på lcd1602 tændes af I2C-modulet, så snart det er tilsluttet strøm. De data, der sendes af controlleren, inkluderer også den position på LCD-skærmen, hvor dataene vil blive vist. Tegnene, der vises på lcd1602, er defineret af punktmatrixen, hvor hver position kan vise ét tegn. Mellemrummet mellem tegn og rækker er en del af prikafstanden mellem to tegn og adskiller dermed tegn og linjer.

5. Hvordan forbinder man en I2C LCD1602 til en Arduino?

At forbinde en I2C LCD1602 til en Arduino er ligetil takket være I2C-interfacet. Du skal bruge I2C LCD1602-modulet, et Arduino-kort (som en Arduino Uno) og fire jumperledninger. Tilslut VCC-benet på I2C-modulet til 5V-benet på Arduino, GND-benet til GND-benet på Arduino. Tilslut derefter modulets SDA-stift til SDA-benet (A4) på Arduinoen og modulets SCL-stift til SCL-benet (A5) på Arduinoen. Nogle boards, såsom Arduino Uno R3, har dedikerede I2C-stifter. i2c-modulet skal have adgang til både strømkilden og i2c-linjerne.

Når du har tilsluttet I2C LCD1602 til Arduino, kan du begynde at programmere den. For at kommunikere med i2c-modulet skal du installere det nødvendige arduino-bibliotek. Dette inkluderer typisk tilføjelse af de specifikke biblioteker til I2C LCD. Når disse er installeret, kan den grundlæggende eksempelkode bruges til at teste displayet. Du skal også finde I2C-adressen på dit modul, som normalt kan bestemmes gennem en I2C-scannerskitse. Når du har fundet i2c-adressen, kan du fortsætte med at programmere din I2C LCD.

I2C LCD1602 med Arduino

6. Hvad er fordelene ved at bruge et I2C LCD1602-modul med Arduino?

Der er flere fordele ved at bruge et I2C LCD1602-modul med Arduino. Den væsentligste fordel er reduktionen i ledningskompleksiteten. Traditionelle LCD-moduler kræver mange data- og kontrollinjer, som hurtigt kan forbruge tilgængelige ben på Arduino. I2C-modulet forenkler dette i høj grad. Ved at bruge I2C-grænsefladen har du kun brug for fire forbindelser (VCC, GND, SDA, SCL), hvilket frigør værdifulde digitale ben på din Arduino til anden brug. Denne enkelhed reducerer ikke kun rod og forenkler projektet, men reducerer også risikoen for ledningsfejl. i2c-grænsefladen gør det også muligt at tilslutte andre i2c-enheder på samme tid til den samme mikrocontroller.

En anden fordel ved i2c lcd1602-modulet er den nemme programmering. Når bibliotekerne er sat korrekt op, er den nødvendige kode til at styre LCD-skærmen betydeligt enklere end med en standard LCD. Biblioteker som LiquidCrystal_I2C abstraherer kompleksiteten af i2c-kommunikationen, så programmøren kan fokusere på teksten og informationen, der vises på LCD-skærmen. Dette gør det meget nemmere at bruge en lcd1602 til at vise tegn og tekst med forskellige parametre. Alt dette gør integrationen af LCD-skærmen hurtigere og mere brugervenlig.

7. Hvad er nogle almindelige problemer, når du bruger et LCD-skærmmodul, og hvordan kan du løse dem?

Et af de mest almindelige problemer ved brug af et LCD-displaymodul er, at displayet ikke viser tegn korrekt, eller at de viste tegn ikke er tydelige. Det betyder ofte, at du skal justere kontrasten. Kontrasten på skærmvisningen kan justeres ved at bruge et potentiometer eller ved at justere koden med de korrekte opkald til Arduino-biblioteket. Hvis du bruger et potentiometer, skal du tilslutte vo til den midterste ben på potentiometeret, og derefter forbinde de andre ben til gnd'en og til strømkilden. Du kan justere kontrasten ved at dreje potentiometeret. Andre almindelige problemer er normalt relateret til defekte ledninger eller en forkert i2c-adresse. Dobbelttjek altid dine forbindelser, og sørg for, at i2c-adressen matcher den, der bruges i din kode.

Et andet almindeligt problem er, at baggrundsbelysningen ikke virker. Dette kan skyldes forkert ledningsføring af led-stifterne på selve i2c-modulet eller problemer med softwaren, hvis den styres fra softwaren. Sørg for, at lysdioden får strøm. Sørg også for, at din Arduino eller andre controllere er tændt korrekt, og at du forbinder vss til gnd på lcd1602 til strømkilden, og at du forbinder k til gnd. Hvis der ikke vises noget på skærmen, er der mulighed for, at i2c-modulet er defekt. Kontroller altid strømkilden til både arduino og lcd.

8. Hvilken Arduino-eksempelkode er nødvendig for at styre en LCD1602 med I2C?

For at styre I2C LCD1602-modulet med Arduino skal du bruge de relevante biblioteker. Det mest almindelige bibliotek er LiquidCrystal_I2C bibliotek. Først skal du installere biblioteket ved hjælp af Arduino IDE-bibliotekshåndtering. Når den er installeret, kan den grundlæggende eksempelkode bruges til at vise tekst på skærmen. Eksempelkoden begynder med medtagelsen af det nødvendige bibliotek og definerer i2c-adressen og lcd-objektet. Dernæst ville du bruge setup()-funktionen til at starte visningen med en kommando som lcd.begin(16, 2); og derefter bruge lcd.print("Hej, verden!"); for at vise en besked på skærmen.

De loop() funktionen vil løbende udføre koden indenfor, og den kan bruges til at opdatere displayet. De optimerede ved at kalde funktionsbiblioteker giver dig mulighed for at vise tegn og strenge på LCD-skærmen. Med i2c-biblioteket og funktionerne kan du rydde LCD-skærmen, placere markøren og udskrive forskellige typer data såsom strenge og tal. Her er et grundlæggende eksempel på at vise en besked:

#omfatte 

// Indstil LCD-adressen til 0x27 for en visning på 16 tegn og 2 linjer
LiquidCrystal_I2C lcd(0x27, 16, 2);

ugyldig opsætning() {
  // initialiser LCD'et
  lcd.init();

  // Tænd baggrundsbelysningen.
  lcd.baggrundslys();

  // Udskriv en besked til LCD'et.
  lcd.print("Hej, LCD!");
}

ugyldig sløjfe() {
  //intet her, men du kunne gøre mere
}

9. Kan du bruge en 16×2 LCD med andre platforme som Raspberry Pi?

Ja, et 16×2 LCD-modul, inklusive I2C-versionen, kan bruges med andre platforme som Raspberry Pi. Det grundlæggende princip er det samme: etablere kommunikation mellem platformen og LCD-controlleren. Til Raspberry Pi vil du typisk bruge Python-programmeringssproget og I2C-biblioteker. Ledningerne til i2c-grænsefladen med Raspberry Pi vil være de samme, hvor I2C-forbindelserne går til de korrekte ben. Et bibliotek vil også være nødvendigt for at bruge I2C. Der er også moduler, der fungerer direkte med raspberry pi, såsom SunFounder Raspberry Pi-modulet, der forenkler opsætningen.

Processen involverer aktivering af I2C på Raspberry Pi, installation af de nødvendige Python-biblioteker (normalt smbus for I2C-kommunikation), og derefter skrive koden for at styre LCD-skærmen. I2C-adressen skal også angives i koden, og den skal matche den faktiske adresse på i2c-adapteren. Processen med at opsætte i2c lcd'en med en Raspberry Pi svarer til Arduino-platformen. Den største forskel er programmeringssproget og bibliotekerne. Når først biblioteket er konfigureret, er kommandoerne til at styre i2c lcd ens. i2c kommunikationsprotokollen er universel og kan bruges på tværs af forskellige platforme.

10. Hvordan kan en 16×2 LCD bruges til at vise tegn og strenge effektivt?

16×2 lcd-modulet har et begrænset antal tegn og strenge, det kan vise, men det kan stadig bruges meget effektivt. Tallet 1602 betyder, at LCD-skærmen kan vise 16 tegn og 2 rækker. Den bedste måde at bruge LCD-skærmen på er at holde beskederne korte og præcise. LCD'en har også et sæt tilgængelige kommandoer til at flytte markøren, rydde skærmen og indstille forskellige visningsparametre. For eksempel kan du flytte markøren til forskellige positioner for at vise tegn og strenge forskellige steder på skærmen. Du kan bruge lcd.setCursor(kolonne, række) for at angive den nøjagtige placering, hvor det næste tegn vil blive vist.

Det er også vigtigt at rydde LCD-skærmen, når det er nødvendigt. Funktionen lcd.clear() kan bruges til at rydde det aktuelle indhold på lcd-skærmen. Du kan vise to tegn og et mellemrum. Det er også vigtigt at forstå begrænsningen af 1602-tegn-type flydende krystal display. Hver tegnposition er lavet af 5×7 eller 5×11 punktmatrix, som er perfekt til bogstaver og tal, men det er vigtigt at have dette i tankerne, når du designer dit output og hvad der bliver vist og 16 tegn på tværs af hver linje. Den første række af rektangler er det område på skærmen, hvor hver position kan vise et tegn, som er sammensat af 5×7 eller 5×11 punktmatrix.

16x2 LCD-modulskærm Monokrom skærm

Nøgle takeaways

  • De 16×2 LCD er et populært valg til visning af tekst og numeriske data i elektronikprojekter.
  • LCD1602-modulet er en specifik implementering af 16×2-karakters lcd.
  • I2C forenkler ledningsføringen og reducerer antallet af ben, der er nødvendige for at styre LCD-skærmen.
  • I2C-grænsefladen bruger kun to ledninger (SDA og SCL) til kommunikation.
  • LCD1602-modulet kombinerer et LCD-display med et I2C-interface.
  • Tilslutning af en I2C LCD1602 til en Arduino kræver kun fire ledninger (VCC, GND, SDA, SCL).
  • Et Arduino-bibliotek er nødvendigt for at styre I2C LCD1602.
  • i2c-grænsefladen gør det muligt at tilslutte andre i2c-enheder på samme tid.
  • 16×2 LCD kan også bruges med platforme som Raspberry Pi.
  • Korrekt justering af kontrasten er afgørende for tydelig visning.

Tabel 1: Benforbindelser mellem I2C LCD1602 og Arduino

LCD pinArduino Pin
VCC5V
GNDGND
SDAA4 (eller SDA)
SCLA5 (eller SCL)

Tabel 2: Vigtigste forskelle mellem standard- og I2C LCD1602-moduler

FeatureStandard LCD1602I2C LCD1602
LedningskompleksitetHøjLav
Antal brugte stifterMangeFire
MeddelelseParallelSeriel (I2C)
Nem programmeringMere kompleksEnklere
Nødvendige pinsmangemindre

Denne omfattende vejledning bør udstyre dig med viden til at begynde at bruge et i2c lcd1602-modul i dine Arduino- eller Raspberry Pi-projekter. 

Kommentarer

Kontakt os

Store ting i erhvervslivet bliver aldrig gjort af én person. De er lavet af et hold af mennesker. Vi har den dynamiske gruppe af mennesker
Rul til toppen

Online forespørgsel

Udfyld formularen nedenfor, så kontakter vi dig snarest.