Början Microcontrollers del 13: Intro till LCD gränssnitt



Mikrokontroller är en underbar bit av ingenjörskonst och det kan göra många saker (med hjälp av några bra programmering), men det är fortfarande en ogenomskinlig svart låda. Om du vill att dela information, eller visa dig vad det försöker göra det, måste du ansluta (gränssnitt) en utdataenhet. En utdataenhet ger dig ett sätt att visa information från mikrokontroller. Det vill säga, kan utdataenheten mikrokontroller till "output" information till "device". Vi har redan arbetat med en annan utgång, s.k. LED (Light Emitting Diode), som avger ljus när du programmera den att göra sådana. Nu tar vi en grundlig titt på gränssnitt och programmering LCD (Vätskekristall uppvisning).

LCD är en mycket mer informativ utenhet än en enstaka LED. LCD är en display som enkelt kan visa tecken på dess skärm. LCD-skärmar varierar i storlek, pris och konfiguration, från att ha ett par rader till stora bildskärmar. Vissa är även utformade för enstaka program, med endast den förmågan att Visa set grafik. Vi kommer att använda en LCD som har förmågan att Visa fyra (4) rader med tecken som har en 20 tecken radlängden. Detta kommer att vara tillräckligt att visa en hel del information. En annan populär LCD har 2 rader och 16 tecken per rad.

I video tutorial (postat ovan), vi kommer att undersöka hur LCD tar emot information och kontroll, och kraven för att se till att informationen skickas till LCD-skärmen på det sätt som det kan på lämpligt sätt acceptera information. Så, vad betyder allt detta?

Först har vi en hastighet diskrepans mellan LCD och mikrokontroller. Mikrokontroller är betydligt snabbare än LCD, så den microcontroller program måste vara fullt medvetna om detta och kompensera för den tid att LCD är upptagna med att arbeta på saker du sa det strax före. Lyckligtvis, LCD kan informera oss om denna upptagen status. Vi vill skapa en funktion för att vänta tills LCD-skärmen inte är upptagen. För LCD att acceptera information från mikrokontroller eller låt det ge dig information, måste vi vända sin aktivera pin på och av informationen som finns för LCD att acceptera.

Nu kommer vi att diskutera stiften på LCD. Den mest grundläggande av stiften är power stiften för att visa för att kunna fungera för det första. Det finns en VDD pin för 5 volt och en VSS pin för marken. Det finns en V0 pin för justeringen av LCD-kontrasten. Vissa LCD-skärmar har en LED-bakgrundsbelysning som är allmänt sista två stiften.

Precis som mikrokontroller har LCD en rad med 8 stift att fungera som dess port. Stiften som tjänar som dess port är D0, D1, D2, D3, D4, D5, D6 och D7. Dessa stift används ofta för att överföra information till LCD-skärmen, men det kan också ställas in att skicka information tillbaka till mikrokontroller. Du är förmodligen tänker "Du sa detta är en utdataenhet!". Jo, visst, det är, men från tid till annan, det måste du informera dig om dess tillstånd (upptagen eller inte). Två typer av information kan skickas genom dessa stift: data som ska visas på LCD-skärmen eller kontrollinformation som används för att göra saker som att rensa skärmen, kontroll av markörens position, aktivera och stänga skärmen och så vidare. Dessa data stift är anslutna till stiften av önskad port på mikrokontroller. Till exempel, om du ville LCD vara ansluten till PORTB, D0 skulle anslutas till Pin0 i Port B, och: D1-PortB Pin1, D2-PortB Pin2, D3-PortB Pin3, D4-PortB Pin4, D5-PortB Pin5, D6-PortB Pin6 och D7-PortB Pin7. Detta sätt, det finns pin till pin konsekvens, och om du passerar en karaktär i form av ett hexadecimalt tal, LCD-skärmen kommer att få det på rätt sätt. Om inte, kommer det oväntade resultat, om du använder en unik form av byte struktur, men låt inte att få i din väg.

Det finns andra stift på LCD-skärmen att hjälpa LCD acceptera information, och tala LCD till får en karaktär eller kontrolleller kontroll Läs eller (ingång eller utgång) skrivfunktion av stiften. För klargörande, läsa/skriva är mikrokontroller-centrerad: LCD "läsa" mode är processen att överföra information från LCD-skärmen till mikrokontroller (microcontroller port input eller läser eller lyssnar).; läget LCD "Skriv" är utbyte av information från mikrokontroller till LCD (microcontroller utgång eller skrift). Utan att ta hänsyn till

PIN-koden på LCD som är ansvarig för Läs- och staten är märkt R / W. Stiftet på LCD-skärmen som är ansvarig för om informationen som skickas är karaktär eller kontroll, är RS pin (registrera Välj). Och den pin som hjälper LCD acceptera information kallas EN pin (aktivera).

Det finns tre grundläggande saker du kommer att vilja göra med en LCD-skärm för en väl fungerande (mer avancerade funktioner kan utföras med dessa tre grundläggande rutiner): (1) att se till att LCD-skärmen inte är upptagen; (2) styr den LCD markören eller Visa funktion; och (3) skriva en karaktär till LCD-skärmen för att det ska visas. Varje av dessa kräver en egen process:

(1) kontrollera om LCD är upptagen (om du försöker att visa ett tecken till LCD-skärmen medan LCD är upptagen, kommer LCD-skärmen att bara dumhuvuden karaktär och det kommer inte att visas).

  • Vi ställer in porten att ta emot data på mikrokontroller (Data riktning som indata).
  • Vi sätter LCD i läs-läge (RW på).
  • Vi sätter LCD i kommando-läge (RS off).
  • Och porten nu innehåller magiskt data från LCD (D7 pin kommer att vara på om LCD är upptagen och bort om LCD är inte upptagen).

(2) Skicka ett kommando till LCD-skärmen

  • Vi kontrollerar för att se om LCD är upptagen (utföra stegen i #1 ovan).
  • Vi ange port riktning så vi kan skicka information till LCD-skärmen.
  • Vi stänga RW så vi kan skriva.
  • Vi inaktivera RS för kommando-läge.
  • Vi eld upp data rader med kommandot vill vi (helt enkelt göra porten motsvara ett antal som associerar till ett visst kommando).
  • Vi slår på Aktivera och sedan stänga av.
  • LCD-skärmen kommer att magiskt utföra kommandot.

(3) skicka en karaktär till LCD: detta är samma sak som att skicka ett kommando utom RS är på och hamnen kommer att motsvara det tecken som motsvarar ASCII-kod.

Så, vi egentligen bara vänder stift av och på, precis som vi gjorde med lysdioderna från senaste tutorials. Det är så enkelt. Enda haken är att de måste göras i rätt ordning.

Relaterade Ämnen

Början Microcontrollers del 12: Intro till avbryter

I denna del av handledningen vi prata om avbrott arbeta till exempel med räknaren. Avbryter förbättra mikrokontroller i stort sätt. Avbryter göra din program reagerar på hårdvaran i microcontrollers, vilket kan vara en reaktion från circuit utanför m...

Början Microcontrollers del 2: Att skapa ett SPI gränssnitt från programmeraren till mikrokontroller

Hej, hoppas vi du gillade del 1 av början Microcontrollers. Vi ska flytta i del 2 och börja prata om gränssnitt och hur du får din microcontroller att kommunicera med en dator.Så, vid denna punkt, du bör känna till begreppet mikrokontroller (MCU). Du...

Början Microcontrollers del 6: Skriva det första programmet till vända på en LED

Jag vet att du är redo att skriva det första programmet. Du har gått igenom en hel del hittills! Medan vi i frågan, låt oss sammanfatta händelserna. Du gick ut och köpte Atmel AVR mikrokontroller för att förstora. Jag valde theATMega32 för min använd...

Början Microcontrollers del 8: Lägga till en knapp till mikrokontroller och göra det göra något

En mycket enkel och lätt sätt att tillhandahålla för mänsklig interaktion med mikrokontroller är att infoga en knapp i kretsen. Att kommunicera med datorer som använder två viktigaste inmatningsenheter: musen och tangentbordet. Ett tangentbord är ing...

Början Microcontrollers del 3: Överföra ett Program till mikrokontroller (drivrutiner)

Välkommen till del 3. Detta är en mindre handledning som kommer att behandla helt enkelt laddar drivrutiner se till din programmerare kan kommunicera med datorn ordentligt.Observera att ibland TinyISP och USBAVR enheter nu kommer förladdad med Window...

Början Microcontrollers del 11: Timers, räknare och mikrokontroller klockan

Timers och räknare är så integrerad att du kommer att se många exempel på dem i hela denna serie. Som namnet säger, används timers för tid och räkna. Inventering och timing kan du göra några mycket fina saker som kontrollerande LED brights, vinkel gr...

Början Microcontrollers del 9: Knappen och programvara Debouncing metoder

I denna del av handledningen kommer att vi diskutera knappen och programvara debouncing.Vi vill studera knappen debouncing första och i detalj så vi har en god förståelse för vad det innebär. Knappen debouncing är viktigt och bör inte vara undervärde...

Början Microcontrollers del 5: Provning programmeraren och bygga den första kretsen

Så långt, bör du ha alla mjukvaran installerad och konstruerade det gränssnitt som kommer att ge en bekväm anslutning från programmeraren till mikrokontroller (MCU). För nästa steg måste en skärbräda (de med siffror är mycket bra), en LED och ett mot...

[Del 1] Intro till Java - komma igång

Hallå där! Idag ska jag ge dig en liten snabbkurs i en mycket intressant värld av Java kodning. Du bör följa denna tutorial innan du följer någon av mina senare tutorials!Steg 1: Så du koden?Så vill du kod va? Bra kodning är mer avancerad än det verk...

Början Microcontrollers del 4: Installera programmering miljö (WinAVR)

Välkommen till nästa steg i vår serie. Vi kommer att introducera några grundläggande programmeringselement nu. Denna handledning är helt enkelt om hur du installerar din programmeringsmiljö. Den programmeringsmiljö som vi kommer att använda kallas Wi...

Början Microcontrollers del 7: Omarbetning av det första programmet att göra LED blinkar

Du har skrivit det första programmet, som visade på en LED. Ja, det var spektakulärt! Tja, inte riktigt, men låt oss införa lite galenskap till LED. Vi ska ge det en "bipolära" personlighet genom att blinka. Då vi kliver upp ett snäpp och gör de...

[Del 2] Intro till Java - variabler

Innan du läser:Du borde ha läst min första handledning innan du läser den här! Vissa saker är inte meningsfullt om du inte!Nu när du har slutfört ett grundläggande program, varför vi får in en viktig byggsten i kodning; variabler! Variabler som nämns...

Fläkt RPM med inre hall effekt sensor och Arduino (Intro till hårdvara avbryta och LCD display)

För mitt andra projekt för arbete, jag var tvungen att mäta rotationshastigheten av rotoren i varv Per minut (RPM) av en modifierad dator fläkt. Den hade tre kablarna kommer ut och som kryssat mig som kanske har något sätt att kontrollera sin hastigh...

Intro till ARM del 1

I den här första videon kommer jag att ge ett intro till STM32F0Discovery utveckling styrelsen som vi kommer att använda för nästa några videor. Jag kommer att beskriva hårdvaran i styrelsen och vad alla dev kit har att erbjuda.Länk till ST: s hemsid...

Konfiguration av MKS Sbase v1.2 32-bitars Controller grunderna och intro till Smoothieware.

ProlougeJag är verkligen glad att se hur denna grundläggande intro till Smoothieware och MKS Sbase 1.2 controller har fått så mycket uppmärksamhet, och hoppas verkligen att det kommer att hjälpa människor att komma igång eller besluta att inte.Jag ha...

PICAXE - DS18B20 temperaturgivare till LCD

detta är min första Picaxe design, program och bygga projektet. Projektet ansluter en DS18B20 sensor till en parallell LCD med hjälp av ett PICAXE 20 X 2. Den mäter rumstemperaturen och läser det till LCD-skärmen varje sekund eller så. Detta projekt...

Intro till Robotics

Robotar går snabbt från tecken och koncepten som endast återfinns i science fiction till del av vår vardag. Även om de kan ibland verkar vara elektromekaniska mysterier, blir personliga robotics mer tillgängliga varje dag! Billigare, högre kvalitet,...

Intro till MaxMSP

MaxMSP är ett grafiskt programmeringsspråk som hjälper dig att bygga komplexa interaktiva program utan någon tidigare erfarenhet av att skriva kod. MaxMSP är speciellt användbar för byggnaden audio, MIDI, video och grafikprogram där användarinterakti...

3D-utskrifter Intro till Makerbot

Här är och Intro till använder Makerbot Desktop skriva ut 3D-objekt på skrivbordet Makerbot Replicator 5! Mycket grundläggande instruktioner, Känn dig fri att röra runt med programvaran lite mer. (:Steg 1: Välj din fil. Antingen gör din egen 3D-model...