LCD - Een display kopen voor microcontrollers
Een Liquid Crystal Display, ook wel kortweg LCD genoemd, wordt in de micro-elektronica vaak gebruikt om vastgelegde gegevensreeksen buiten de ontwikkelomgeving weer te geven, bijvoorbeeld de seriële monitor van de Arduino IDE.
Omdat LCD's in de volksmond ook vaak LCD-displays worden genoemd, zullen we hieronder de "verkeerde" benaming gebruiken voor een beter begrip.
De technische achtergrond van een LCD display is even eenvoudig als ingenieus: er zijn meestal tussen de 16 en 20 segmenten op het display, die worden weergegeven in twee tot vier rijen, afhankelijk van de versie. De bijbehorende displays worden daarom vaak aangeduid als 1602 LCD of 2004 LCD displays genoemd. Binnen deze segmenten bevinden zich vloeibare kristallen (vandaar de term "vloeibaar kristal") die, wanneer er spanning op wordt gezet, zichzelf zo rangschikken dat het gewenste cijfer verschijnt.
Verschillende vormen van LCD-schermen
We onderscheiden twee verschillende versies van LCD-schermen voor microcontrollers. Dit zijn versies met een parallel bussysteem en versies met een serieel bussysteem, ook wel I2C genoemd. Beide versies worden meestal vanuit de fabriek geleverd met de Hitachi HD44780 chip of een compatibele versie.
Het voordeel van het seriële bussysteem ten opzichte van de parallelle bus is vooral de vereenvoudigde bekabeling. Terwijl LCD-schermen met een parallel bussysteem 14 of 16 kabels nodig hebben om aangesloten te worden op een microcontroller, heeft een scherm met een serieel bussysteem slechts vier kabels nodig.
We raden altijd aan, vooral aan beginners, om gebruik te maken van Beeldschermen met I2C bus. Het terugbrengen van de benodigde kabels op een breadboard van 14/16 naar 4 kabels maakt het hanteren van de displays veel eenvoudiger en maakt het project ook visueel slanker.
Praktische tips voor het gebruik van een LCD-scherm voor microcontrollers
De meeste productspecifieke vragen die we van klanten krijgen gaan over het gebruik van LCD-schermen met een seriële interface (I2C bus). Daarom willen we wat dieper ingaan op een aantal tips die je van pas kunnen komen bij het in gebruik nemen van het display.
De achtergrondverlichting van het LCD-scherm werkt niet
Dit kan twee mogelijke oorzaken hebben: Of je hebt de achtergrondverlichting niet ingeschakeld in de code ("lcd.backlight();" of "lcd.noBacklight();") of de jumper aan de achterkant van het display zit niet goed.
Het LCD-scherm geeft geen tekst weer
Vaak is het contrast van het scherm niet goed ingesteld bij levering. Je kunt deze instelling wijzigen door aan de trimmer potentiometer op het LCD-scherm te draaien Trimmer potentiometer die zich op het LCD-scherm bevindt.
De tekst op het LCD-scherm komt niet overeen met mijn code
Als er cryptische tekens op je display worden weergegeven, is de fout in de meeste gevallen te wijten aan een incompatibele bibliotheek. Vooral voor seriële LCD-schermen vind je een groot aantal bibliotheken met identieke namen. Dit is meestal "LiquidCrystal_I2C.h". Niet alle bibliotheken met deze naam gebruiken identieke functies. Wij gebruiken altijd de bibliotheek "LiquiCrystal_I2C.h" van de heer Frank de Brabander in onze gratis instructies.
Een andere mogelijke oorzaak is de aansturing via een verkeerd HEX-adres. De LCD displays met seriële interface worden vanuit de fabriek geleverd met twee verschillende HEX-adressen. Deze zijn "0x27" of "0x3F" en moeten in de code overeenkomstig worden genummerd.
Je kunt uitlezen welk HEX-adres jouw display heeft met de code in onze instructies "Twee I2C Displays".