- Nødvendige materialer
- Kort introduktion til 16 × 2 Punktmatrix LCD-display
- ADC i TIVA Launchpad
- Kredsløbsdiagram og forbindelser
- Programmering af TIVA TM4C Launchpad til LCD ved hjælp af Energia IDE
- 16x2 LCD-skærm med TIVA Launchpad
I den foregående vejledning startede vi med at lære om TIVA TM4C Launchpad, og hvordan man styrer dens digitale indgangs- og outputstifter ved hjælp af Energia IDE. Nu, i denne vejledning, vil vi lære om grænsefladen mellem 16 × 2 Dot matrix LCD-skærm og dette kort for at vise nyttig information og sensordata.
16x2 LCD-skærm er de fleste af os ville have stødt på dette enten gennem offentlige pc'er eller brugt det i andre elektronikprojekter. 16x2 LCD er billigt display modul, som er meget praktisk for enhver elektronik applikationer til at vise data eller anden fejlretningsinformation. Så her interfaces vi 16x2 LCD-skærm med TIVA C-serien TM4C123G LaunchPad. Her viser vi ADC-værdierne og spændingsniveauerne på LCD-displayet. Et potentiometer er tilsluttet for at variere ADC-værdierne. Lær mere om 16x2 LCD-skærm og dens ben her.
Nødvendige materialer
- TIVA TM4C LaunchPad fra Texas Instruments
- 16 × 2 Punktmatrix LCD-skærm
- Tilslutning af ledninger
Kort introduktion til 16 × 2 Punktmatrix LCD-display
Som tidligere fortalt giver Energia IDE et smukt bibliotek, der gør grænsefladen et stykke kage, og det er derfor ikke obligatorisk at vide noget om displaymodulet. Men ville det ikke være interessant at vise, hvad vi bruger !!
Navnet 16 × 2 indebærer, at skærmen har 16 kolonner og 2 rækker, som tilsammen (16 * 2) danner 32 felter. En enkelt kasse ville se sådan ud på billedet nedenfor
En enkelt boks har 40 pixels (prikker) med en matrixrækkefølge på 5 rækker og 8 kolonner, disse 40 pixels danner tilsammen et tegn. Tilsvarende kan 32 tegn vises ved hjælp af alle felterne. Lad os nu se på pinouts.
LCD'et har i alt 16 pins, som vist ovenfor, de kan kategoriseres i fire grupper som følger
Kildestifter (1, 2 og 3): Disse stifter kilder skærmens effekt- og kontrastniveau
Kontrolstifter (4, 5 og 6): Disse stifter indstiller / styrer registre i LCD-interface IC (mere kan findes i linket nedenfor)
Data / Command Pins (7 til 14): Disse pins giver data om, hvilke oplysninger der skal vises på LCD'et.
LED-ben (15 og 16): Disse ben bruges til at tænde LCD-baggrundsbelysningen, hvis det er nødvendigt (valgfrit).
Ud af alle disse 16 ben skal kun 10 ben bruges obligatorisk til korrekt funktion af LCD'et, hvis du vil vide mere om dette LCD-display, spring til denne LCD-artikel.
Kontroller også grænsefladen mellem 16x2 LCD-skærm og mange andre mikrocontrollere
- Interfacing 16x2 LCD med Atmega16 AVR Microcontroller i 4-bit tilstand
- LCD-grænseflade med PIC Microcontroller ved hjælp af MPLABX og XC8
- Interfacing 16x2 LCD med STM32F103C8T6
- Interfacing LCD med MSP430G2 LaunchPad
- LCD-grænseflade med 8051 mikrokontroller
- Interfacing 16x2 LCD med Arduino
- 16x2 LCD-grænseflade med Raspberry Pi ved hjælp af Python
ADC i TIVA Launchpad
Potentiometer leverer analog udgang, så den ikke kan tilsluttes de digitale stifter på Launchpad. Så analoge eller ADC-ben på MCU'en bruges til at interface enhver sensor, hvis output er analog. TIVA TM4C har 2 ADC-kanaler med 12-bit output, hvilket betyder, at de analoge værdier fra sensoren eller potentiometeret kan kortlægges mellem 0 og 2 ^ 12 (4096) for at konvertere dem til digitale værdier. Hvis du vil lære mere om analog til digital konvertering i Microcontroller, skal du følge linket.
Der er 12 analoge inputstifter (A0-A11) i TIVA Launchpad som vist på billedet nedenfor.
Kredsløbsdiagram og forbindelser
Nedenfor vises det komplette kredsløbsdiagram til interface til en 16 × 2 dotmatrix LCD-skærm med TIVA Launchpad TM4C.
En vigtig begrænsning under grænsefladen mellem disse LCD er dens driftsspændinger. LCD-skærmen har en driftsspænding på + 5V, mens TM4C kun fungerer med 3,6V. Heldig for os har datapinnen på LCD-interface IC (HD44780U) en bred driftsspænding på 2,7V til 5,5V. Så vi skal kun bekymre os om LCD-skærmens Vdd (pin 2), mens datapindene kan fungere selv med 3,6 V.
TIVA-kortet har som standard ikke en + 5V-pin, så en ekstern strømforsyning skal bruges til at få LCD'et til at fungere. Brug enten strømforsyning fra Arduino-kort, eller brug 7805 spændingsregulator. Sørg for at forbinde strømforsyningsjorden med jorden på TIVA-kortet.
Nedenfor er tabellen, der viser forbindelserne mellem LCD og TIVA Launchpad
LCD pin-navn | TIVA Launchpad |
Vss | Jord |
Vdd | + 5V strømforsyning |
Rs | Pin PC_6 af TIVA |
R / W | Jord |
Aktiver | Pin PB_7 af TIVA |
D4 | Pin PA_2 af TIVA |
D5 | Pin PA_3 af TIVA |
D6 | Pin PA_4 af TIVA |
D7 | Pin PB_6 af TIVA |
For at få vist potentiometerværdierne på LCD, skal du slutte Pot-output til en hvilken som helst analog pin (PE2).
Programmering af TIVA TM4C Launchpad til LCD ved hjælp af Energia IDE
Før du fortsætter med forklaringen, skal du notere de ben, der bruges i dette projekt. Se kredsløbsdiagrammet og TIVA pin-out-diagrammet ovenfor. Komplet kode med en fungerende video er vedhæftet i slutningen af denne vejledning.
Energia IDE leveres som standard med bibliotek til 16x2 LCD (LiquidCrystal). Hvis det ikke er til stede, skal du downloade det fra dette github-link og indsætte det i biblioteksmappen i Energia IDE.
Start derefter programmet ved at inkludere biblioteket til LCD og definere stifterne til det
#omfatte
Det næste trin er at nævne de ben, som LCD-skærmen er forbundet med, som vi allerede har navngivet den ved hjælp af #define, kan vi nu blot nævne navnene på LCD-benene. Sørg for, at den samme rækkefølge følges.
LiquidCrystal lcd (RS, EN, D4, D5, D6, D7);
Der er så mange typer LCD-skærme, der varierer i størrelse og art, så i ugyldig opsætning () -funktionen skal du først angive den type LCD, du bruger i projektet. Her har vi brugt 16x2 LCD-skærm.
lcd.begin (16, 2);
For at udskrive noget på LCD'et skal du nævne to ting i programmet. Den ene er placeringen af teksten, som kan nævnes ved hjælp af linjen lcd.setCursor (), og den anden er det indhold, der skal udskrives, som kan nævnes af lcd.print (). Her sætter vi markøren til en st række og 1 st kolonne.
lcd.setCursor (0,0);
På samme måde kan vi også gøre
lcd.setCursor (0, 1); // for at indstille markøren til 1. kolonne 2. række
Ligesom at slette en tavle efter at have skrevet på den, skal en LCD også slettes, når der er skrevet noget på den. Dette kan gøres ved hjælp af nedenstående linje
lcd.clear ();
I ugyldig loop () -funktion skal du tage potværdien ved hjælp af analogRead () -funktionen og gemme denne værdi i en anden variabel og derefter vise denne værdi.
sensorValue = analogRead (sensorPin); lcd.setCursor (0, 0); lcd.print ("ADC-værdi:"); lcd.setCursor (10, 0); lcd.print (sensorValue);
Nu konvertere denne ADC værdi til spænding lige ved at gange den med 3,3 fordi det er den højeste spænding, der kan accepteres af TIVA boards ben. Dele derefter den gangede værdi med 4096.
lcd.setCursor (0, 1); lcd.print ("Spændinger:"); spændinger = (sensorValue * 3.3) / 4096; lcd.setCursor (10, 1); lcd.print (spændinger);
Komplet program kan findes i slutningen.
16x2 LCD-skærm med TIVA Launchpad
Når hardware og kode er klar, skal du blot slutte TIVA-kortet til computeren og uploade koden til kortet. Følg den foregående vejledning for at lære, hvordan du uploader koden i TIVA Launchpad.
Når koden er uploadet, skal du se skærmen, der viser følgende.
Drej nu bare på potentiometeret for at variere ADC-værdien, og du vil se, at den tilsvarende spændingsværdi også vil variere, som vist på nedenstående billede.
Den komplette kode og den detaljerede video kan findes nedenfor. Gå videre og prøv at ændre teksten, der vises på LCD-skærmen.