<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>lcd &#8211; Makerblog.at</title>
	<atom:link href="https://www.makerblog.at/tag/lcd/feed/" rel="self" type="application/rss+xml" />
	<link>https://www.makerblog.at</link>
	<description>Arduino Projekte, Tutorials, 3D-Druck und die Maker-Szene</description>
	<lastBuildDate>Fri, 07 Feb 2025 08:10:23 +0000</lastBuildDate>
	<language>de</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	<generator>https://wordpress.org/?v=6.9.4</generator>

<image>
	<url>https://www.makerblog.at/wp-content/uploads/cropped-logo-100x100-2-32x32.jpg</url>
	<title>lcd &#8211; Makerblog.at</title>
	<link>https://www.makerblog.at</link>
	<width>32</width>
	<height>32</height>
</image> 
	<item>
		<title>LCD Displays mit I²C am Arduino</title>
		<link>https://www.makerblog.at/2025/02/lcd-displays-mit-i%c2%b2c-am-arduino/</link>
					<comments>https://www.makerblog.at/2025/02/lcd-displays-mit-i%c2%b2c-am-arduino/#respond</comments>
		
		<dc:creator><![CDATA[Adi Dax]]></dc:creator>
		<pubDate>Fri, 07 Feb 2025 08:10:22 +0000</pubDate>
				<category><![CDATA[Allgemein]]></category>
		<category><![CDATA[Arduino]]></category>
		<category><![CDATA[arduino]]></category>
		<category><![CDATA[display]]></category>
		<category><![CDATA[i2c]]></category>
		<category><![CDATA[lcd]]></category>
		<guid isPermaLink="false">https://www.makerblog.at/?p=1806</guid>

					<description><![CDATA[LCD Displays am Arduino sind eine praktische Möglichkeit, damit man Daten nicht immer nur über die serielle Schnittstelle ausgeben muss und lassen auch kleine Projekte gleich professioneller aussehen. Besonders das 1602 Display mit 2 Zeilen à 16 Zeichen ist in fast jedem Arduino Starter Kit zu]]></description>
										<content:encoded><![CDATA[
<p>LCD Displays am Arduino sind eine praktische Möglichkeit, damit man Daten nicht immer nur über die serielle Schnittstelle ausgeben muss und lassen auch kleine Projekte gleich professioneller aussehen.</p>



<p>Besonders das <strong>1602 Display</strong> mit 2 Zeilen à 16 Zeichen ist in fast jedem <strong><a href="https://amzn.to/4hJAJW4" target="_blank" rel="noreferrer noopener">Arduino Starter Kit</a></strong> zu finden. Diese Displays sind praktisch und kostengünstig, haben jedoch einen Nachteil: Sie werden standardmäßig <strong>parallel angesteuert</strong> und benötigen dadurch mindestens 6 Digitalpins am Arduino und eventuell auch noch eine Potentiometer am Breadboard.</p>



<p>Das kann problematisch werden, wenn weitere&nbsp;Sensoren oder Module&nbsp;angeschlossen werden sollen. Hinzu kommt der&nbsp;Kabelsalat&nbsp;auf dem Breadboard, der bei komplexeren Projekten schnell unübersichtlich wird.</p>



<h2 class="wp-block-heading">Die Lösung: Die I²C-Schnittstelle für LCD Displays</h2>



<p>Die&nbsp;<strong>I²C-Schnittstelle</strong>&nbsp;(Inter Integrated Circuit) bietet eine einfache Lösung für dieses Problem. I²C&nbsp;ist ein Protokoll zur seriellen Kommunikation zwischen elektronischen Bauteilen. Es benötigt nur&nbsp;zwei Leitungen und damit nur 2 Digitalpins am Arduino:</p>



<ul class="wp-block-list">
<li><strong>SDA</strong>&nbsp;(Serial Data Line) für die Datenübertragung</li>



<li><strong>SCL</strong>&nbsp;(Serial Clock Line) für den Takt</li>
</ul>



<p>Jedes I²C-Gerät hat eine&nbsp;<strong>eindeutige Adresse</strong>. Dadurch können über dieselben zwei Pins mehrere Module wie Sensoren oder Displays angesprochen werden.</p>



<p>Für Standard-LCDs gibt es kleine&nbsp;I²C-Adapterplatinen, die einfach an die 16 Anschlusspins des Displays gelötet werden. Diese verwenden meist den PCF8574, einen I/O Expander, der serielle Daten in parallele Signale für das LCD umwandelt. Diese Adapter stellen dann die&nbsp;4 I²C-Anschlüsse&nbsp;(VCC, GND, SDA, SCL) zur Verfügung. Ein&nbsp;Potentiometer zur Helligkeitssteuerung&nbsp;der Anzeige ist oft noch zusätzlich auf der Platine integriert.</p>



<p>Diese Erweiterungen sind praktisch, machen das Modul jedoch etwas unhandlicher. Aus diesem Grund gibt es inzwischen auch <strong>LCD Displays mit integrierter I²C-Schnittstelle</strong>, die direkt auf dem Modul verbaut ist und so den gewohnten Formfaktor beibehält.</p>




<div class="aawp">
    <div class="aawp-grid aawp-grid--col-3">

            
        <div class="aawp-grid__item">
            
<div class="aawp-product aawp-product--vertical aawp-product--bestseller aawp-product--ribbon"  data-aawp-product-asin="B0B76Z83Y4" data-aawp-product-id="4236" data-aawp-tracking-id="makerblogwp-21" data-aawp-product-title="FREENOVE I2C IIC LCD 1602 Module  2 Pack  New Type TWI Serial 16x2 Display Compatible with Arduino Raspberry Pi Pico ESP32 ESP8266" data-aawp-local-click-tracking="1">

    <span class="aawp-product__ribbon aawp-product__ribbon--bestseller">Bestseller Nr. 1</span>
    <a class="aawp-product__image--link aawp-product__image"
       href="https://www.amazon.de/dp/B0B76Z83Y4?tag=makerblogwp-21&linkCode=ogi&th=1&psc=1&keywords=lcd%20i2c" title="FREENOVE I2C IIC LCD 1602 Module (2 Pack), New Type TWI Serial 16x2 Display, Compatible with Arduino Raspberry Pi Pico ESP32 ESP8266" rel="nofollow noopener sponsored" target="_blank">
        <img decoding="async" class="aawp-product__image" src="https://www.makerblog.at/wp-content/plugins/aawp/public/image.php?url=YUhSMGNITTZMeTl0TG0xbFpHbGhMV0Z0WVhwdmJpNWpiMjB2YVcxaFoyVnpMMGt2TlRFeFIzTnJZMUpZUmt3dVgxTk1NVFl3WHk1cWNHYz18MTc3NDA5OTI2MA=" alt="FREENOVE I2C IIC LCD 1602 Module (2 Pack), New Type TWI Serial 16x2 Display, Compatible with Arduino Raspberry Pi Pico ESP32 ESP8266"  />
    </a>

    <div class="aawp-product__content">
        <a class="aawp-product__title" href="https://www.amazon.de/dp/B0B76Z83Y4?tag=makerblogwp-21&linkCode=ogi&th=1&psc=1&keywords=lcd%20i2c" title="FREENOVE I2C IIC LCD 1602 Module (2 Pack), New Type TWI Serial 16x2 Display, Compatible with Arduino Raspberry Pi Pico ESP32 ESP8266" rel="nofollow noopener sponsored" target="_blank">
            FREENOVE I2C IIC LCD 1602 Module (2 Pack), New...        </a>

        <div class="aawp-product__meta">
            
                    </div>
    </div>

    <div class="aawp-product__footer">

        <div class="aawp-product__pricing">

            
                            <span class="aawp-product__price aawp-product__price--current">12,95 EUR</span>
                    </div>

                <a class="aawp-button aawp-button--buy aawp-button aawp-button--amazon aawp-button--icon aawp-button--icon-black" href="https://www.amazon.de/dp/B0B76Z83Y4?tag=makerblogwp-21&#038;linkCode=ogi&#038;th=1&#038;psc=1&#038;keywords=lcd%20i2c" title="Bei Amazon kaufen" target="_blank" rel="nofollow noopener sponsored">Bei Amazon kaufen</a>
            </div>
</div>
        </div>

            
        <div class="aawp-grid__item">
            
<div class="aawp-product aawp-product--vertical aawp-product--bestseller aawp-product--ribbon"  data-aawp-product-asin="B0B76YGDV4" data-aawp-product-id="4237" data-aawp-tracking-id="makerblogwp-21" data-aawp-product-title="Freenove I2C IIC LCD 1602 Module New Type TWI Serial 16x2 Display Compatible with Arduino Raspberry Pi Pico ESP32 ESP8266" data-aawp-local-click-tracking="1">

    <span class="aawp-product__ribbon aawp-product__ribbon--bestseller">Bestseller Nr. 2</span>
    <a class="aawp-product__image--link aawp-product__image"
       href="https://www.amazon.de/dp/B0B76YGDV4?tag=makerblogwp-21&linkCode=ogi&th=1&psc=1&keywords=lcd%20i2c" title="Freenove I2C IIC LCD 1602 Module, New Type TWI Serial 16x2 Display, Compatible with Arduino Raspberry Pi Pico ESP32 ESP8266" rel="nofollow noopener sponsored" target="_blank">
        <img decoding="async" class="aawp-product__image" src="https://www.makerblog.at/wp-content/plugins/aawp/public/image.php?url=YUhSMGNITTZMeTl0TG0xbFpHbGhMV0Z0WVhwdmJpNWpiMjB2YVcxaFoyVnpMMGt2TlRGNlpISkxUVk5pTFV3dVgxTk1NVFl3WHk1cWNHYz18MTc3NDA5OTI2MA=" alt="Freenove I2C IIC LCD 1602 Module, New Type TWI Serial 16x2 Display, Compatible with Arduino Raspberry Pi Pico ESP32 ESP8266"  />
    </a>

    <div class="aawp-product__content">
        <a class="aawp-product__title" href="https://www.amazon.de/dp/B0B76YGDV4?tag=makerblogwp-21&linkCode=ogi&th=1&psc=1&keywords=lcd%20i2c" title="Freenove I2C IIC LCD 1602 Module, New Type TWI Serial 16x2 Display, Compatible with Arduino Raspberry Pi Pico ESP32 ESP8266" rel="nofollow noopener sponsored" target="_blank">
            Freenove I2C IIC LCD 1602 Module, New Type TWI...        </a>

        <div class="aawp-product__meta">
            
                    </div>
    </div>

    <div class="aawp-product__footer">

        <div class="aawp-product__pricing">

            
                            <span class="aawp-product__price aawp-product__price--current">8,95 EUR</span>
                    </div>

                <a class="aawp-button aawp-button--buy aawp-button aawp-button--amazon aawp-button--icon aawp-button--icon-black" href="https://www.amazon.de/dp/B0B76YGDV4?tag=makerblogwp-21&#038;linkCode=ogi&#038;th=1&#038;psc=1&#038;keywords=lcd%20i2c" title="Bei Amazon kaufen" target="_blank" rel="nofollow noopener sponsored">Bei Amazon kaufen</a>
            </div>
</div>
        </div>

            
        <div class="aawp-grid__item">
            
<div class="aawp-product aawp-product--vertical aawp-product--bestseller aawp-product--ribbon"  data-aawp-product-asin="B0FPQM3ZJR" data-aawp-product-id="4238" data-aawp-tracking-id="makerblogwp-21" data-aawp-product-title="APKLVSR 2004 LCD Display Modul,4 Stück 20x4 Zeichen LCD I2C Display mit Blauer Hintergrundbeleuchtung,Kompatibel mit Arduino/Ras-pberry Pi Pico/ESP32/ESP8266 Blau/2004" data-aawp-local-click-tracking="1">

    <span class="aawp-product__ribbon aawp-product__ribbon--bestseller">Bestseller Nr. 3</span>
    <a class="aawp-product__image--link aawp-product__image"
       href="https://www.amazon.de/dp/B0FPQM3ZJR?tag=makerblogwp-21&linkCode=ogi&th=1&psc=1&keywords=lcd%20i2c" title="APKLVSR 2004 LCD Display Modul,4 Stück 20x4 Zeichen LCD I2C Display mit Blauer Hintergrundbeleuchtung,Kompatibel mit Arduino/Ras-pberry Pi Pico/ESP32/ESP8266(Blau/2004)" rel="nofollow noopener sponsored" target="_blank">
        <img decoding="async" class="aawp-product__image" src="https://www.makerblog.at/wp-content/plugins/aawp/public/image.php?url=YUhSMGNITTZMeTl0TG0xbFpHbGhMV0Z0WVhwdmJpNWpiMjB2YVcxaFoyVnpMMGt2TlRGWlFVRnZjVEp3UTB3dVgxTk1NVFl3WHk1cWNHYz18MTc3NDA5OTI2MA=" alt="APKLVSR 2004 LCD Display Modul,4 Stück 20x4 Zeichen LCD I2C Display mit Blauer Hintergrundbeleuchtung,Kompatibel mit Arduino/Ras-pberry Pi Pico/ESP32/ESP8266(Blau/2004)"  />
    </a>

    <div class="aawp-product__content">
        <a class="aawp-product__title" href="https://www.amazon.de/dp/B0FPQM3ZJR?tag=makerblogwp-21&linkCode=ogi&th=1&psc=1&keywords=lcd%20i2c" title="APKLVSR 2004 LCD Display Modul,4 Stück 20x4 Zeichen LCD I2C Display mit Blauer Hintergrundbeleuchtung,Kompatibel mit Arduino/Ras-pberry Pi Pico/ESP32/ESP8266(Blau/2004)" rel="nofollow noopener sponsored" target="_blank">
            APKLVSR 2004 LCD Display Modul,4 Stück 20x...        </a>

        <div class="aawp-product__meta">
            
                    </div>
    </div>

    <div class="aawp-product__footer">

        <div class="aawp-product__pricing">

            
                            <span class="aawp-product__price aawp-product__price--current"></span>
                    </div>

                <a class="aawp-button aawp-button--buy aawp-button aawp-button--amazon aawp-button--icon aawp-button--icon-black" href="https://www.amazon.de/dp/B0FPQM3ZJR?tag=makerblogwp-21&#038;linkCode=ogi&#038;th=1&#038;psc=1&#038;keywords=lcd%20i2c" title="Bei Amazon kaufen" target="_blank" rel="nofollow noopener sponsored">Bei Amazon kaufen</a>
            </div>
</div>
        </div>

    
    </div>
</div>




<h2 class="wp-block-heading">Anschluss eines I²C-LCD Displays an den Arduino</h2>



<p>Der Anschluss eines I²C-LCD Displays an den Arduino UNO ist denkbar einfach:</p>



<ol start="1" class="wp-block-list">
<li><strong>VCC</strong>&nbsp;an&nbsp;<strong>5V</strong></li>



<li><strong>GND</strong>&nbsp;an&nbsp;<strong>GND</strong></li>



<li><strong>SDA</strong>&nbsp;an&nbsp;<strong>A4</strong>&nbsp;(Arduino UNO)</li>



<li><strong>SCL</strong>&nbsp;an&nbsp;<strong>A5</strong>&nbsp;(Arduino UNO)</li>
</ol>



<p><strong>Hinweis:</strong> Bei anderen Mikrocontrollern können die I²C-Pins variieren.</p>



<ul class="wp-block-list">
<li>Arduino UNO/Nano: SDA an A4, SCL an A5.</li>



<li>Arduino Micro: SDA an D2, SCL an D3.</li>



<li>Arduino Mega 2560: SDA an D20, SCL an D21.</li>



<li>ESP8266 (NodeMCU): SDA an GPIO4 (D2), SCL an GPIO5 (D1).</li>



<li>ESP32: SDA an GPIO21, SCL an GPIO22.</li>



<li>Raspberry Pi (Model 3 &amp; 4): SDA an GPIO2 (Pin 3), SCL an GPIO3 (Pin 5).</li>



<li>STM32 (Blue Pill): SDA an PB7, SCL an PB6.</li>



<li>Teensy 4.x: SDA an Pin 18, SCL an Pin 19.</li>
</ul>



<h2 class="wp-block-heading"><strong>LCD Display, Zeichensatz und Sonderzeichen</strong></h2>



<p>LCD-Displays wie das 1602 oder 2004 verwenden oft einen HD44780-kompatiblen Controller, der einen festgelegten Zeichensatz (Character Generator ROM, CGROM) integriert hat. Dieser Zeichensatz basiert auf dem erweiterten ASCII-Code und enthält neben den englischen Buchstaben, Zahlen und Symbolen auch einige Sonderzeichen wie Pfeile oder mathematische Symbole. Allerdings fehlen häufig länderspezifische Sonderzeichen, etwa deutsche Umlaute (ä, ö, ü) oder das „ß“.</p>



<p>Für individuelle Anpassungen bietet der Controller einen benutzerdefinierten Zeichensatz (CGRAM), in dem bis zu acht eigene Zeichen definiert werden können. Diese Zeichen werden als 8&#215;5-Pixel-Matrix erstellt und können zur Darstellung von Sonderzeichen oder Symbolen genutzt werden. Wenn jedoch mehr als acht Sonderzeichen benötigt werden, müssen diese dynamisch neu definiert werden, was bei häufiger Nutzung den Code komplexer macht.</p>



<p>Eine sehr gute Library zur Anzeige deutscher Umlaute samt umfangreicher Erklärung:<br><a href="https://werner.rothschopf.net/202003_arduino_liquid_crystal_umlaute.htm">https://werner.rothschopf.net/202003_arduino_liquid_crystal_umlaute.htm</a></p>



<h2 class="wp-block-heading">Einfacher Sekundenzähler auf einem LCD Display</h2>


<pre class="wp-block-code"><span><code class="hljs language-php"><span class="hljs-comment">#include &lt;LCDI2C_Multilingual_MCD.h&gt;</span>

LCDI2C_Latin lcd(<span class="hljs-number">0x27</span>, <span class="hljs-number">16</span>, <span class="hljs-number">2</span>); <span class="hljs-comment">// I2C Adresse: 0x27; Display: 16x2</span>

void setup() {
  lcd.init(); <span class="hljs-comment">// Display initialisieren</span>
  lcd.backlight(); <span class="hljs-comment">// Hintergrundbeleuchtung einschalten</span>
  lcd.setCursor(<span class="hljs-number">0</span>, <span class="hljs-number">0</span>); <span class="hljs-comment">// Cursor auf erstes Zeichen in erster Zeile</span>
  lcd.<span class="hljs-keyword">print</span>(<span class="hljs-string">"Sekunden:"</span>); <span class="hljs-comment">// Text in erster Zeile ausgeben</span>
}

void loop() {
    unsigned long seconds = millis() / <span class="hljs-number">1000</span>;
 
    lcd.setCursor(<span class="hljs-number">0</span>, <span class="hljs-number">1</span>); <span class="hljs-comment">// Cursor auf erstes Zeichen in zweiter Zeile</span>
    lcd.<span class="hljs-keyword">print</span>(seconds); <span class="hljs-comment">// Zeit seit Start in Sekunden ausgeben</span>
    lcd.<span class="hljs-keyword">print</span>(<span class="hljs-string">"s   "</span>); <span class="hljs-comment">// s für Sekunden und ein paar Leerzeichen zum Überschreiben alter Werte</span>
    delay(<span class="hljs-number">500</span>); <span class="hljs-comment">// Leichte Verzögerung, damit nicht dauernd geschrieben wird</span>
}</code></span></pre>


<h2 class="wp-block-heading">I²C-Adressen verstehen und ändern</h2>



<p>Da alle über I²C angesteuerten Geräte über einen gemeinsamen Datenbus angesprochen werden, benötigt jedes Gerät eine eindeutige Adresse. Die <strong>Standardadresse</strong> für viele LCD-I²C-Module ist <strong>0x27</strong> (hexadezimal).</p>



<p>Wenn mehrere Displays verwendet werden sollen oder es einen Adresskonflikt mit anderen Geräten gibt, dann müssen unterschiedliche Adressen vergeben werden. Auf der Rückseite des I²C-Moduls befinden sich dazu drei Pins: <strong>A0, A1 und A2</strong>. Diese Pins steuern die letzten 3 Bits der I²C-Adresse.</p>



<ul class="wp-block-list">
<li><strong>Offen (HIGH)</strong>: Das Bit ist auf&nbsp;<strong>1</strong>&nbsp;gesetzt.</li>



<li><strong>Kurzgeschlossen (LOW)</strong>: Das Bit wird auf&nbsp;<strong>0</strong>&nbsp;gesetzt.</li>
</ul>



<p>Beispiel (I²C Adressen in 7 Bit)</p>



<ul class="wp-block-list">
<li><strong>A0 geschlossen</strong>: Ändert die Adresse von <strong>0x27</strong> <strong>(0b0100111)</strong>&nbsp;auf&nbsp;<strong>0x26 (0b0100110)</strong>.</li>



<li><strong>A1 geschlossen</strong>: Ändert die Adresse von&nbsp;<strong>0x27 (0b0100111)</strong>&nbsp;auf&nbsp;<strong>0x25 (0b0100101)</strong>.</li>



<li><strong>Alle geschlossen</strong>: Adresse ändert sich von&nbsp;<strong>0x27 (0b0100111)</strong>&nbsp;auf&nbsp;<strong>0x20 (0b0100000)</strong>.</li>
</ul>



<p>So lassen sich mehrere Displays mit unterschiedlichen Adressen am selben I²C-Bus betreiben.</p>



<h3 class="wp-block-heading">Drei Displays gleichzeitig ansteuern</h3>



<p>In diesem Beispiel werden drei Displays über den I²C-Bus gleichzeitig angesteuert. Die Displays zeigen unterschiedliche Informationen an.</p>


<pre class="wp-block-code"><span><code class="hljs language-php"><span class="hljs-comment">#include &lt;LCDI2C_Multilingual_MCD.h&gt;</span>

LCDI2C_Latin lcd1(<span class="hljs-number">0x25</span>, <span class="hljs-number">16</span>, <span class="hljs-number">2</span>); <span class="hljs-comment">// I2C Adresse: 0x25; Display: 16x2</span>
LCDI2C_Latin lcd2(<span class="hljs-number">0x26</span>, <span class="hljs-number">16</span>, <span class="hljs-number">2</span>); <span class="hljs-comment">// I2C Adresse: 0x26; Display: 16x2</span>
LCDI2C_Latin lcd3(<span class="hljs-number">0x27</span>, <span class="hljs-number">20</span>, <span class="hljs-number">4</span>); <span class="hljs-comment">// I2C Adresse: 0x27; Display: 20x4</span>

unsigned long lastSecond = <span class="hljs-number">0</span>; <span class="hljs-comment">// Zwischenspeicher für Fortschrittsbalken</span>
int progressBar = <span class="hljs-number">0</span>; <span class="hljs-comment">// Aktuelle Länge des Fortschrittbalkens</span>

void setup() {
  lcd1.init(); <span class="hljs-comment">// Display1 initialisieren</span>
  lcd1.backlight(); <span class="hljs-comment">// Hintergrundbeleuchtung einschalten</span>
  lcd1.setCursor(<span class="hljs-number">0</span>, <span class="hljs-number">0</span>); <span class="hljs-comment">// Cursor auf erstes Zeichen in erster Zeile</span>
  lcd1.<span class="hljs-keyword">print</span>(<span class="hljs-string">"Sekunden:"</span>); <span class="hljs-comment">// Text in erster Zeile ausgeben</span>

  lcd2.init(); <span class="hljs-comment">// Display 2 initialisieren</span>
  lcd2.backlight(); 
  lcd2.setCursor(<span class="hljs-number">0</span>, <span class="hljs-number">0</span>); 
  lcd2.<span class="hljs-keyword">print</span>(<span class="hljs-string">"Millisekunden:"</span>); 

  lcd3.init(); <span class="hljs-comment">// Display 3 initialisieren</span>
  lcd3.backlight(); 
  lcd3.setCursor(<span class="hljs-number">0</span>, <span class="hljs-number">0</span>); 
  lcd3.<span class="hljs-keyword">print</span>(<span class="hljs-string">"Fortschrittsbalken:"</span>); 
}

void loop() {

    unsigned long currentMillis = millis();
    unsigned long currentSeconds = currentMillis / <span class="hljs-number">1000</span>;

    <span class="hljs-comment">// Display 1 - aktuelle Zeit in Sekunden</span>
    lcd1.setCursor(<span class="hljs-number">0</span>, <span class="hljs-number">1</span>); <span class="hljs-comment">// Cursor auf erstes Zeichen in zweiter Zeile</span>
    lcd1.<span class="hljs-keyword">print</span>(currentSeconds); <span class="hljs-comment">// Zeit seit Start in Sekunden ausgeben</span>
    lcd1.<span class="hljs-keyword">print</span>(<span class="hljs-string">"s"</span>); <span class="hljs-comment">// sec für Sekunden</span>

    <span class="hljs-comment">// Display 2 - Zeit in Millisekunden</span>
    lcd2.setCursor(<span class="hljs-number">0</span>, <span class="hljs-number">1</span>);
    lcd2.<span class="hljs-keyword">print</span>(currentMillis); <span class="hljs-comment">// Zeit seit Start in Millisekunden ausgeben</span>
    lcd2.<span class="hljs-keyword">print</span>(<span class="hljs-string">"ms"</span>);


    <span class="hljs-comment">// Display 3: Fortschrittsbalken aktualisieren (60 Zeichen pro Minute)</span>
    <span class="hljs-keyword">if</span> (lastSecond != currentSeconds) { <span class="hljs-comment">// Nur aktualisieren, wenn sich der Inhalt geändert hat</span>
        progressBar = currentSeconds % <span class="hljs-number">60</span>; <span class="hljs-comment">// Fortschritt von 0 bis 59</span>
        lastSecond = currentSeconds;
        
        <span class="hljs-comment">// Fortschrittsbalken leeren bei Neuanfang</span>
        <span class="hljs-keyword">if</span> (progressBar == <span class="hljs-number">0</span>) {
          <span class="hljs-keyword">for</span> (int row = <span class="hljs-number">1</span>; row &lt;= <span class="hljs-number">3</span>; row++) {
            lcd3.setCursor(<span class="hljs-number">0</span>, row);
            lcd3.<span class="hljs-keyword">print</span>(<span class="hljs-string">"                    "</span>);
          }
        }

        <span class="hljs-comment">// Fortschrittsbalken zeichnen</span>
        int row = <span class="hljs-number">1</span>;
        int col = <span class="hljs-number">0</span>;
        <span class="hljs-keyword">for</span> (int i = <span class="hljs-number">0</span>; i &lt; progressBar; i++) {
            lcd3.setCursor(col, row);
            lcd3.<span class="hljs-keyword">print</span>(<span class="hljs-string">"#"</span>);
            col++;
            <span class="hljs-keyword">if</span> (col &gt;= <span class="hljs-number">20</span>) { <span class="hljs-comment">// Nächste Zeile nach 20 Zeichen</span>
                col = <span class="hljs-number">0</span>;
                row++;
            }
        }
    }

}</code></span></pre>


<p>Mit einer I²C-Schnittstelle kann man LCD Displays einfach ansteuern und in jedes Projekt integrieren. Anstatt für jedes Display mehrere Pins zu belegen, genügen zwei Pins (SDA und SCL), um mehrere Displays oder Sensoren zu betreiben. Das ermöglicht komplexe Projekte, ohne sich Gedanken über fehlende GPIO-Pins machen zu müssen.</p>



<p>Dank der verfügbaren Libraries und einfacher Adressänderungen ist die Einrichtung von I²C-LCDs schnell erledigt. Ob <strong>ein einzelnes Display</strong> oder <strong>mehrere Module gleichzeitig</strong> – mit I²C sind die Möglichkeiten nahezu unbegrenzt.</p>



<p><br>
<div class="aawp">

            
            
<div class="aawp-product aawp-product--list aawp-product--bestseller aawp-product--ribbon"  data-aawp-product-asin="B01IHCCKKK" data-aawp-product-id="4251" data-aawp-tracking-id="makerblogwp-21" data-aawp-product-title="ELEGOO UNO R3 Ultimate Starter Kit Kompatibel mit Arduino IDE Vollständigster Elektronik Projekt Baukasten mit deutschem Tutorial UNO R3 Mikrocontroller Board und Zubehör  mehr als 200 Teile" data-aawp-local-click-tracking="1">

    <span class="aawp-product__ribbon aawp-product__ribbon--bestseller">Bestseller Nr. 1</span>
    <div class="aawp-product__inner">
        <a class="aawp-product__image-link" href="https://www.amazon.de/dp/B01IHCCKKK?tag=makerblogwp-21&linkCode=ogi&th=1&psc=1&keywords=arduino%20starter%20kit" title="ELEGOO UNO R3 Ultimate Starter Kit, Kompatibel mit Arduino IDE Vollständigster Elektronik Projekt Baukasten mit deutschem Tutorial, UNO R3 Mikrocontroller Board und Zubehör (mehr als 200 Teile)" rel="nofollow noopener sponsored" target="_blank">
            <img decoding="async" class="aawp-product__image" src="https://www.makerblog.at/wp-content/plugins/aawp/public/image.php?url=YUhSMGNITTZMeTl0TG0xbFpHbGhMV0Z0WVhwdmJpNWpiMjB2YVcxaFoyVnpMMGt2TmpFNVVteHlVSFZZV2t3dVgxTk1NVFl3WHk1cWNHYz18MTc3NDA5OTI2MA=" alt="ELEGOO UNO R3 Ultimate Starter Kit, Kompatibel mit Arduino IDE Vollständigster Elektronik Projekt Baukasten mit deutschem Tutorial, UNO R3 Mikrocontroller Board und Zubehör (mehr als 200 Teile)"  />
        </a>
        <div class="aawp-product__content">
            <a class="aawp-product__title" href="https://www.amazon.de/dp/B01IHCCKKK?tag=makerblogwp-21&linkCode=ogi&th=1&psc=1&keywords=arduino%20starter%20kit" title="ELEGOO UNO R3 Ultimate Starter Kit, Kompatibel mit Arduino IDE Vollständigster Elektronik Projekt Baukasten mit deutschem Tutorial, UNO R3 Mikrocontroller Board und Zubehör (mehr als 200 Teile)" rel="nofollow noopener sponsored" target="_blank">ELEGOO UNO R3 Ultimate Starter Kit, Kompatibel mit Arduino IDE Vollständigster Elektronik Projekt Baukasten mit deutschem Tutorial, UNO R3 Mikrocontroller Board und Zubehör (mehr als 200 Teile)</a>
            <div class="aawp-product__teaser">
                            </div>
            <div class="aawp-product__meta">
                
                
                                    <span class="aawp-product__price aawp-product__price--current">52,99 EUR</span>
                
                            </div>
        </div>
    </div>

</div>

    
</div>
</p>
]]></content:encoded>
					
					<wfw:commentRss>https://www.makerblog.at/2025/02/lcd-displays-mit-i%c2%b2c-am-arduino/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
	</channel>
</rss>
