Stap 2: Weten uw hardware #1
De HD44780 kan in twee modi werken:
1. 4-bits modus, waar elke byte naar de LCD gestuurd uit 2 delen van 4-bits bestaat.
2. 8-bits modus, waarop zullen we ons richten.
Het LCD-scherm heeft 16 pinnen in totaal 3 controle pinnen en 8 data pins:
RS - bepaalt of we willen een opdracht of gegevens te verzenden van het LCD-scherm. Waar 'hoge' betekent gegevens (een teken) en 'laag' betekent een byte van de opdracht.
R/W - de HD44780 controller kunt u lezen van het RAM-geheugen. Wanneer deze pin 'hoog' kunnen we gegevens lezen van de gegevens-pins. Wanneer is het 'laag' kan we gegevens naar de LCD schrijven. Hoewel de optie om te lezen van LCD nuttig zijn in sommige gevallen kunnen, in deze tutorial gaan we niet over het en wij gewoon zullen de grond deze pin om ervoor te zorgen dat er altijd in schrijfmodus.
E - E is de 'Inschakelen' pin, deze pin is een knevel gevoorzid 'hoog' en 'lage' om te schrijven van de gegevens van het RAM-geheugen en uiteindelijk weer te geven op het scherm.
DB0-7 - dit zijn de gegevens pinnen. In 4-bits modus gebruiken we alleen de 4 hoge bits DB4-DB7, en in 8 bits modus worden allemaal gebruikt.
VSS - dit is de grond pin.
VCC - dit de macht pin, het LCD-scherm van een 5V voeding loopt, kunnen we gemakkelijk voeden het macht van van de Arduino + 5v pin.
Vo - dit is de pincode die u toestaat om het contrast instellen voor de weergave, het vereist een potentiometer, normaal gesproken een 5 K Ohm pot wordt gebruikt.
LED + - dit is de krachtbron voor de achtergrondverlichting. Sommige LCD's niet voorzien van een achtergrondverlichting, en slechts 14 pinnen. In de meeste gevallen deze pin ook vereist een + 5v verbinding.
LED - - dit is de grond voor de backlight.*
* Het is belangrijk om te controleren van het gegevensblad weergegeven of inspecteren van de PCB om te controleren voor een weerstand van de achtergrondverlichting, meeste LCDs zal hen ingebouwde, alles wat je hoeft te doen is in welk geval de stroomtoevoer LED + en grond aan LED-. Maar in het geval uw LCD niet hebben een ingebouwde weerstand voor de achtergrondverlichting, is het belangrijk dat u er een toevoegen, anders de achtergrondverlichting veel macht verbruiken zal en het zal uiteindelijk burn-out.
In de meeste gevallen is de manier waarop die dit LCD is aangesloten op de Arduino met behulp van het in 4-bits modus en aarding van de R/W pen. Op deze manier gebruiken we pin RS, E en DB4-DB7. Uitgevoerd in 4-bit modus heeft een ander klein nadeel dat twee keer zo lang om gegevens te schrijven naar het scherm duurt als het in de configuratie van een 8-bits nemen zou. Het LCD-scherm heeft een 'regelen' tijd van 37 microseconden, dit betekent dat je moet wachten 37 microseconden voordat de volgende opdracht of gegevens-byte naar het LCD-scherm. Aangezien in 4-bit mode we verzenden gegevens tweemaal voor elke byte moeten, klimt de totale tijd die het duurt om te schrijven van een enkele byte naar 74microseconds. Dit is nog steeds snel genoeg, maar ik wilde mijn ontwerp te produceren van de best mogelijke resultaten.
De oplossing voor ons probleem met het aantal pinnen gebruikt ligt in een seriële naar parallelle converter...