Skip to content
2026.04.17.
  • F
  • X
  • LinkedIn
  • YouTube
  • Instagram
  • GitHub
TavIR

TavIR

Mikrokontroller világ

  • TavIR Tudástár
  • TavIR WebShop
  • TavIR Fórum
  • Hírek
  • Könyvek
    • Egyszerű elektronika – Kezdőlap
    • ESP8266/ESP32
    • Tippek
      • Tippek-trükkök (AVR)
      • Tippek-trükkök (ESP8266/ESP32)
  • +Gyorstippek
  • +Mélyvíz
  • +Témakereső
  • Kapcsolat
  • Főoldal
  • Tippek
  • Tippek-trükkök (AVR)
  • Automata I2CLCD kijelző illesztés
  • Tippek
  • Tippek-trükkök (AVR)

Automata I2CLCD kijelző illesztés

Robert 2021.11.15.
20x4-es kék háttérvilágítású LCD kijelző Arduino-hoz csatlakoztatva,

Szeretem az I2C bővítővel szerelt LCD-kijelzőket mindenféle projektben használni. Sok szempont dominál mellette:

  • meglehetősen kedvező az ára,
  • hasznos a hibakereséshez vagy a végfelhasználói információkhoz,
  • csak 2 kivezetést + tápfeszültséget használ (de az I2C busz lehet más I2C eszközzel megosztottan is), valamint
  • kevés programmemóriával is beéri.

Tartalomjegyzék

Toggle
  • Hozzávalók
    • Eszközök
    • Szoftver
  • Hogy néz ki az I2CLCD-vel szerelt LCD modul?
  • Probléma és megoldás
  • Eredmény
    • Magyarázat
  • Mintaprogramok

Hozzávalók

Eszközök

  • Önálló I2C LCD modul és
  • Karakteres kijelző vagy
  • Egybeépített karakteres kijelző és I2CLCD modul
  • Arduino UNO alaplap
  • Jumper/Dupont kábel (anya-anya) – 4 érnyi

Szoftver

  • Arduino IDE keretrendszer
    A cikk a Windows alatti 1.8.13 verzióval készült.

Hogy néz ki az I2CLCD-vel szerelt LCD modul?

Az eszköz vagy készre szerelten érhető el, vagy ha épp speciális méret vagy csatlakozás van a karakteres kijelzőn, akkor az I2CLCD külön modullal házasítom össze. Általában valami ilyesmi lesz belőle:

A képen egy 16x2-es (16 karakter széles és 2 soros) LCD kijelző látható zöld háttérrel, amelyhez egy I2C interfész modul van csatlakoztatva. Az I2C modul egyszerűsíti a kijelző vezérlését, lehetővé téve a kevesebb kábel használatát Arduino vagy más mikrokontroller rendszerekhez. A modulon egy kék színű potenciométer is található, amely a kijelző kontrasztjának állítására szolgál.
16×2 LCD kijelző és egy I2C interfész modullal, kontrasztállító potenciométerrel.

Az I2CLCD modulok többféle chippel készülnek – a gyakoribb PCF8574 / PCF8574A mellett az MCP23008, MCP23016 is előfordul… A PCF8574/PCF8574A chipeknek a legjobb a támogatása – ám mindegyiknek más a címtartománya – PCF8574 (0x20-0x27), PCF8574A (0x38-0x3F)…

Probléma és megoldás

Amikor újabb eszköz kerül a készletembe – tuti más címen lehet megszólítani, mint az eddigieket. És a kódot sem örömünnep állandóan átírni….

1567 idea - Cseh Robert / TavIR - i2clcd,autodetect,lcd,arduinoFelmerül az ötlet: ha az I2Cdetect programmal a cím megkereshető, és utána én adom meg a következő programban – nem lehetne ezt a két lépést összevontan automatizálni?

Az ötletet tett követte, az alábbi feltételrendszert betartásával:

  • csak PCF8574/PCF8574A alapú bővítőt használok,
  • a bővítő bármely, a PCF8574/PCF8574A chip által biztosított címen lehet,
  • csak egy LCD kijelző van az áramkörön,
  • más funkcióra nem használok PCF8574/PCF8574 chipet.

Eredmény

A detektálás folyamata és utána az I2CLCD modullal az LCD kezelés az alábbi kódot eredményezte (így nem kell minden alkalommal szerkesztenem a kódot, amikor újabb adag LCD-t kapok):

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
const uint8_t addresses[] = { 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27,  
                              0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f };
#include <Wire.h>
#include <LiquidCrystal_I2C.h>
const int numLcdCols = 16;
const int numLcdrows = 2;
LiquidCrystal_I2C lcd(addresses[1], numLcdCols, numLcdrows);
  // init lcd object (standard address)
 
void setup() {
  int i;
  Wire.begin();
  for(i = 0; i < sizeof(addresses); i++) {
    Wire.beginTransmission(addresses[i]);
    if (Wire.endTransmission() == 0) {
      lcd = LiquidCrystal_I2C(addresses[i], numLcdCols, numLcdrows);
      // reinitialise lcd with new address
      lcd.init();
      // initialise the newly found lcd
      lcd.backlight();
      lcd.clear();
      lcd.print("Hello World!");
      lcd.print (addresses[i], HEX);
      break;
    }
  }
  if (i >= sizeof(addresses)) {
      //Log.error("No display found");
      while(1);       //STOP
  }
}  
 
void loop()
{
  delay(1000);
  lcd.clear();
  lcd.print("Hello World!");
}

Magyarázat

A program elején a lehetséges I2C bővítőpanelek címei vannak megadva, majd az I2C (Wire) eszközkönyvtár és a I2C alapú LCD kezelőprogram hivatkozásai kerültek elhelyezésre. És még végül az LCD sor és oszlop méretei vannak megadva, majd végül inicializálva az alapértelmezett címen az LCD-t.

A kiválasztott címtartományban tesztelésre kerül, hogy a bővítő „megszólal”-e. Ha megszólal, ott az LCD újrabeállításra és újrainicializálásra kerül. Ha nincsen LCD bővítő egyáltalán a cemíek egyikén sem – a program leáll.

És a főprogramban látható az LCD kezelés mintája is…

A képen egy sárga háttérvilágítású 16x2-es LCD kijelző látható, amelyen egy tesztüzenet jelenik meg:
16×2 LCD kijelző sárga háttérvilágítással, tesztüzenettel és átlátszó plexiházban rögzítve.

Mintaprogramok

Az itt levő állományok a cikkhez kapcsolódó mintákat tartalmazzák. Az ezekben szereplő kódok szabadon felhasználhatóak – a bennük levő copyright betartásával.

  • I2CDetect
  • Autodetect LCD

Kapcsolódó cikkek:

– Az LCD Keypad shield használata és a játékok
– TMP36 hőmérő és az Arduino
– LM35 hőmérő és az Arduino
– Karakteres IIC/TWI LCD és kezelése Arduino programból

Tags: i2c i2clcd kijelző LCD

Post navigation

Előző AVR Biztosítékbitek
Következő LM35 hőmérő és az Arduino

Kapcsolódó anyagok

DS3231 és DS1307 RTC modul: CR2032 vagy LIR2032? DS1307/DS3231 RTC modulok és az akku/elem
  • Cikk
  • Mélyvíz
  • Tippek

DS3231 és DS1307 RTC modul: CR2032 vagy LIR2032?

2026.02.06.
A digitális idő paradoxonja: az óraátállítás árnyoldalai Ködös kertben analóg és digitális óra, köztük egy végtelen jelet formázó fényív, alatta automata locsoló rendszer – az őszi óraátállítás kettőzött időpontját szimbolizálva.
  • Cikk
  • Mélyvíz
  • Tippek

A digitális idő paradoxonja: az óraátállítás árnyoldalai

2025.10.23.
Hogyan válassz mikrokontrollert? – Részletes útmutató kezdőknek és haladóknak Fiatal férfi laptopon programoz Arduino eszközöket egy technológiai laborban, miközben egy holografikus áramkör-diagramot néz.
  • Cikk
  • Mélyvíz
  • Tippek-trükkök (AVR)
  • Tippek-trükkök (ESP8266/ESP32)

Hogyan válassz mikrokontrollert? – Részletes útmutató kezdőknek és haladóknak

2025.07.02.

Hírlevél

Hogy az újdonságokról első kézből értesülj:
→ Feliratkozás a Hírlevélre

Ingyenes tanfolyam

60 nap alatt Arduino - az ingyenes tanfolyam
→ Kattints ide és iratkozz fel!
60 nap alatt Arduino

Szeretnél egy lépéssel a többiek előtt járni?

Ne hagyd ki a legújabb tanfolyamokat, amik még csak most bontogatják szárnyaikat.

Legyél te az első! Tanfolyamok

Alkatrész-tár

→ TavIR WebShop
→ Tanulókészletek

Témakörök

  • Cikk (58)
  • Hír (42)
  • Könyv (38)
    • Egyszerű elektronika tippek (18)
    • ESP8266/ESP32 (1)
    • Mélyvíz (12)
    • Mit ne használjunk Arduino projektekben? (6)
  • OmegaFlux (2)
  • Tippek (60)
    • Gyorstippek (20)
    • Tippek-trükkök (AVR) (21)
    • Tippek-trükkök (ESP8266/ESP32) (5)

Fórum

  • Apróhirdetés - csere-bere :: Re: Elajándékoznám mérnökhallgatónak ami a fotón látható!
  • Apróhirdetés - csere-bere :: Re: Elajándékoznám mérnökhallgatónak ami a fotón látható!
  • Apróhirdetés - csere-bere :: Elajándékoznám mérnökhallgatónak ami a fotón látható!

TavIR WebShop

→ Tovább a TavIR WebShopba
Mini fém/golyóscsapágyas servomotor (MG90S/360 )
Mini fém/golyóscsapágyas servomotor (MG90S/360  )

Az MG90S 360 fokos szervomotor egy apró méretű, fém fogaskerekes [...]

GPS modul (NEO-M9N) kerámiaantennával
GPS modul (NEO-M9N) kerámiaantennával

Ha olyan GNSS modult keresel, amit mikrokontrolleres projektbe is könnyen [...]

Eredeti Arduino UNO Q (4GB, QRB2210, STM32U585)
Eredeti Arduino UNO Q (4GB, QRB2210, STM32U585)

Az Arduino UNO Q (ABX00173, 4 GB RAM / 32 [...]

M3 műanyag anya
M3 műanyag anya

Az M3 műanyag anya praktikus választás, ha könnyű szereléshez keresel [...]

RS232-Bluetooth adapter D-SuB9 apa (vezeték nélküli kapcsolat régi soros eszközökhöz)
RS232-Bluetooth adapter D-SuB9 apa (vezeték nélküli kapcsolat régi soros eszközökhöz)

Van egy megbízható, régebbi RS232-es eszközöd, de eleged van a [...]

AVR-Duino / Nano (328+CH340)
AVR-Duino / Nano (328+CH340)

Egyszerű, kicsi, és rögtön munkára fogható Ha egy kompakt, jól [...]

NodeMCU ESP32 / NodeMCU32 terminal-adapter (30/38pin)
NodeMCU ESP32 / NodeMCU32 terminal-adapter (30/38pin)

Az ESP32 38 pin terminal adapter egy praktikus bővítőpanel azokhoz [...]

uSD/microSD kártya (2GB) (uSD/SD adapter és tok)
uSD/microSD kártya (2GB) (uSD/SD adapter és tok)

Ez a 2 GB-os microSD kártya nem a "mindent rámentek" [...]

Tilt (ütés/rezgés/vibráció; SW-420) fekvő kapcsoló (5db/pack)
Tilt (ütés/rezgés/vibráció; SW-420) fekvő kapcsoló (5db/pack)

Egyszerű megoldás, ha azt szeretnéd, hogy a projekted "észrevegye" a [...]

Krokodil csipesz - BNC kábel (oszcilloszkóphoz)
Krokodil csipesz - BNC kábel (oszcilloszkóphoz)

Ne a csatlakozással szenvedj - mérj végre gyorsan és egyszerűen [...]

BME280 (nyomás, pára és hőfok) kombinált szenzor
BME280 (nyomás, pára és hőfok) kombinált szenzor

Ha olyan szenzort keresel, amellyel egyszerre mérhetsz hőmérsékletet, páratartalmat és [...]

RS232–TTL UART szintillesztő modul (DSUB-9, 4 csatorna, 3.3V/5V)
RS232–TTL UART szintillesztő modul (DSUB-9, 4 csatorna, 3.3V/5V)

Kösd össze a régi RS232 eszközeidet a mai mikrokontrolleres fejlesztéseiddel [...]

  • Tovább a TavIR Fórumra...

Címkék

alappanel Arduino Arduino nap Arduino nap 2023 art AVR biztosíték darlington dióda eeprom egyszerű elektronika elem ellenállás ESP Espressif Systems flash Forrasztás ft232 hang hőmérő i2c i2clcd infravörös ISP JTAG kijelző LCD lm35 MOSFET motor pcb páratartalom Qualcomm Relé RTC telepítés tmp36 tranzisztor Történelem Uno wiring WOM Zener április 1 óra

Archívum

  • 2026. április (1)
  • 2026. március (5)
  • 2026. február (4)
  • 2026. január (3)
  • 2025. december (2)
  • 2025. november (2)
  • 2025. október (3)
  • 2025. augusztus (3)
  • 2025. július (7)
  • 2025. június (4)
  • 2025. május (6)
  • 2025. április (3)
  • 2025. március (3)
  • 2025. február (1)
  • 2025. január (6)
  • 2024. december (5)
  • 2024. november (5)
  • 2024. október (6)
  • 2024. szeptember (5)
  • 2024. augusztus (4)
  • 2024. július (3)
  • 2024. június (1)
  • 2024. május (3)
  • 2024. március (1)
  • 2024. február (2)
  • 2024. január (1)
  • 2023. december (5)
  • 2023. szeptember (2)
  • 2023. augusztus (6)
  • 2023. július (2)
  • 2023. június (1)
  • 2023. május (1)
  • 2023. április (10)
  • 2023. február (1)
  • 2022. szeptember (2)
  • 2022. július (1)
  • 2022. május (6)
  • 2022. április (1)
  • 2022. március (2)
  • 2022. január (3)
  • 2021. december (1)
  • 2021. november (4)
  • 2021. október (2)
  • 2021. szeptember (1)
  • 2021. július (1)
  • 2021. május (2)
  • 2021. április (1)
  • 2021. március (2)
  • 2020. szeptember (1)

Eddig nem olvasott...

Signetics WOM-25120: Egy alternatív adatarchitektúra újrafogalmazása a félvezetők korában (ChipTeszt!) WOM-25120 mérés
  • Hír

Signetics WOM-25120: Egy alternatív adatarchitektúra újrafogalmazása a félvezetők korában (ChipTeszt!)

2026.04.01.
ESP-IDF 6.0: nagy ugrás vagy fájdalmas nagytakarítás? 11123 ispidf 55 60 melyviz - Cseh Robert / TavIR - i2clcd,autodetect,lcd,arduino
  • Cikk
  • Mélyvíz

ESP-IDF 6.0: nagy ugrás vagy fájdalmas nagytakarítás?

2026.03.21.
ESP-IDF 6.0 laikus szemmel: mikor válts, mikor ne? Elektronikai munkaasztalon működő ESP32 mikrokontroller és kódoló laptop, amely az ESP-IDF firmware fejlesztés és beágyazott rendszer tanulás folyamatát szemlélteti.
  • Cikk

ESP-IDF 6.0 laikus szemmel: mikor válts, mikor ne?

2026.03.20.
Mit ünneplünk március 14-én? – A PI nap története és érdekességei Egy misztikus, matematikai és csillagászati témájú fantáziafestmény, amelyben a π (pi) számjegyei egy spirális galaxis formájában lebegnek az univerzumban, miközben egy tudós tanulmányozza azokat.
  • Hír

Mit ünneplünk március 14-én? – A PI nap története és érdekességei

2026.03.12.

Információk

Cégadatok-impresszum | Használati feltételek
Adatvédelmi irányelvek | Kapcsolat

Elérhetőség

Ügyfélszolgálat: +36 (20) 99-23-781
E-mail: avr (kukac)tavir (pont) hu
Iroda/telephely: 1181 Budapest, Szélmalom utca 13.
Copyright © TavIR Minden jog fenntartva | DarkNews by AF themes.
TavIR
Manage your privacy

To provide the best experiences, we and our partners use technologies like cookies to store and/or access device information. Consenting to these technologies will allow us and our partners to process personal data such as browsing behavior or unique IDs on this site and show (non-) personalized ads. Not consenting or withdrawing consent, may adversely affect certain features and functions.

Click below to consent to the above or make granular choices. Your choices will be applied to this site only. You can change your settings at any time, including withdrawing your consent, by using the toggles on the Cookie Policy, or by clicking on the manage consent button at the bottom of the screen.

Funkcionális Always active
A technikai tárolás vagy hozzáférés szigorúan szükséges az előfizető vagy felhasználó által kifejezetten kért konkrét szolgáltatás használatának lehetővé tételének jogos céljához, vagy kizárólag a közlés elektronikus hírközlő hálózaton keresztüli továbbításának céljához.
Beállítások
A technikai tárolás vagy hozzáférés a jogos célból szükséges, hogy olyan beállításokat tároljunk, amelyeket az előfizető vagy a felhasználó nem kért.
Statisztika
Kizárólag statisztikai célokra használt technikai tároló vagy hozzáférés. The technical storage or access that is used exclusively for anonymous statistical purposes. Without a subpoena, voluntary compliance on the part of your Internet Service Provider, or additional records from a third party, information stored or retrieved for this purpose alone cannot usually be used to identify you.
Marketing
A technikai tárolás vagy hozzáférés felhasználói profilok létrehozásához szükséges hirdetések küldéséhez, illetve a felhasználó nyomon követéséhez egy vagy több weboldalon hasonló marketingcélokból.
Statistics

Marketing

Features
Always active

Always active
Manage options Manage services Manage {vendor_count} vendors Read more about these purposes
Manage options
{title} {title} {title}