LCD1602 gebruiken met I2C-interface - Arduino-zelfstudie
Deze tutorial laat zien hoe je een 1602 LCD-display met Arduino verbindt via een I2C-module, waardoor de verbinding eenvoudiger en netter is dan bij traditionele parallelle bedrading. Met slechts vier aansluitingen (VCC, GND, SDA, SCL) kun je het display volledig bedienen en tekst of sensorgegevens weergeven in je Arduino-projecten.

Alle benodigde code, bedradingsschema's en downloadlinks voor bibliotheken vind je hieronder in dit artikel.
Wat is LCD1602 met I2C?
De LCD1602 is een display met 16 tekens en 2 regels, dat veel wordt gebruikt in embedded systemen. Normaal vereist het 6 tot 10 pinnen om te werken, maar door een I2C-module toe te voegen zijn slechts twee datalijnen (SDA en SCL) nodig voor communicatie. Dit vereenvoudigt de bedrading aanzienlijk en laat meer pinnen vrij op de Arduino voor andere componenten.
De LCD1602 op Arduino aansluiten

Zo sluit je je LCD1602 met de I2C-module aan op een Arduino Uno:
-
VCC - 5V
-
GND - GND
-
SDA - A4
-
SCL - A5
Bijschrift: LCD1602 verbonden met Arduino via I2C met slechts 4 draden.
- Uitleg van de code voor het weergeven van tekst op de LCD
De onderstaande code initialiseert de LCD, schakelt de achtergrondverlichting in en print tekst in een lus.
cppCopyEdit#include <Wire.h>
#include <LiquidCrystal_I2C.h>
// Stel het LCD-adres in op 0x27 voor een display van 16 tekens en 2 regels
LiquidCrystal_I2C lcd(0x27, 16, 2);
-
Wire.h: Vereist voor I2C-communicatie. -
LiquidCrystal_I2C.h: Bibliotheek om de LCD via I2C aan te sturen. -
lcd(0x27, 16, 2): Initialiseert de LCD op adres0x27met 16 kolommen en 2 regels.
cppCopyEditvoid setup()
{
lcd.begin(); // Initialiseer LCD
lcd.backlight(); // Schakel achtergrondverlichting in
}
-
lcd.begin()bereidt de LCD voor op gebruik. -
lcd.backlight()schakelt de achtergrondverlichting van het display in.
cppCopyEditvoid loop()
{
lcd.clear(); // Wis vorige inhoud
lcd.print("Robojax"); // Print op de eerste regel
lcd.setCursor(0,1); // Verplaats cursor naar het begin van de tweede regel
lcd.print("Hello World!"); // Print op de tweede regel
delay(500); // Wacht 0,5 seconden
}
-
Het scherm wordt elke halve seconde ververst.
-
Je kunt ook andere gegevens weergeven, zoals tijd of sensorwaarden.
De vereiste bibliotheek installeren
Je moet de LiquidCrystal_I2C-bibliotheek installeren:
-
Open de Arduino IDE
-
Ga naar Sketch > Bibliotheek gebruiken > Bibliotheken beheren
-
Zoek naar
LiquidCrystal_I2C -
Klik op Installeren
Zodra dit is geïnstalleerd, kun je de code compileren en uploaden.
Hoofdstukken uit de video
-
00:00 - Start
-
00:35 - LCD1602 en I2C-module uitgelegd
-
04:37 - Bedrading uitgelegd
-
05:35 - LCD1602-I2C-bibliotheek downloaden
-
07:13 - Code uitgelegd voor LCD1602
/*
This is code for LCD1602 Display with I2C module
* Watch the video for this code https://youtu.be/q9YC_GVHy5A
* Permission granted to share this code given that this
* note is kept with the code.
* Disclaimer: this code is "AS IS" and for educational purposes only.
* This library is based on work done by DFROBOT (www.dfrobot.com).
*/
/*
* This code has been modified from the Arduino library
* Updated by Ahmad Nejrabi on Jan 20, 2018 at 11:09
* in Ajax, Ontario, Canada
* for Robojax.com
*
* This is code for LCD1602 Display with I2C module
* which can display text on the screen.
*/
#include <Wire.h>
#include <LiquidCrystal_I2C.h>
// Set the LCD address to 0x27 for a 16 chars and 2 line display
LiquidCrystal_I2C lcd(0x27, 16, 2);
void setup()
{
// Robojax code for LCD with I2C
// initialize the LCD,
lcd.begin();
// Turn on the backlight and print a message.
lcd.backlight();
// Robojax code for LCD with I2C
}
void loop()
{
//start of loop Robojax code for LCD with I2C
lcd.clear();
lcd.print("Robojax");
lcd.setCursor (0,1); // go to start of 2nd line
lcd.print("Hello World!");
//lcd.print(millis() / 1000);
delay(500);
//end of loop Robojax code for LCD with I2C
}
Dingen die je misschien nodig hebt
-
eBay
-
AliExpressPurchase Arduino Start Kit from AliExpresss.click.aliexpress.com
-
BanggoodPurchase LCD1602 display from Banggoodbanggood.com
Hulpmiddelen en referenties
-
Extern
-
Extern
-
Extern
-
ExternPurchase LCD1602 display from Banggoodbanggood.com
Bestanden📁
Arduino-bibliotheken (zip)
-
LCD1602 LCD Arduino library from Robojax
robojax-LCD1602-I2C-library-master.zip0.01 MB
Fritzing-bestand
-
LCD LCD1602-I2C module with 4 wires
LCD1602-I2C.fzpz0.01 MB