LiquidCrystal 4Bit modus

Ich will eine LCD 16X2 mit dem Arduino im 4Bit Modus ansteuern.

Dazu gibt es sehr viel Beiträge. Bei allen die ich bis jetzt gesehen habe werden für e; r/w; r die Pins für I2C benutzt. Gibt es dafür einen Speziellen Grund, oder könne andere Pins dafür verwendet werden und falls ja, gibt es eine Library die das "macht"?

Und wenn nicht, kann ich den I2C Bus trotzdem für andere Module verwenden?

Der 4-Bit Modus hat erstmal nichts mit I2C zu tun. Der Bus liegt am Uno, Nano o.ä. auf den Pins A4 und A5. Somit kannst du den Bus auch für andere I2C Module nutzen.

Ja, meist wird ein I²C-Modul huckepack verwendet, weil Du dann nur zwei Leitungen, SCL und SDA von I²C, benötigst.

Mein Liebling ist die Noiasca Liquid Crystal Bibliothek, weil sie Umlaute und UTF-8 berücksichtigt.

Ja, es ist ein Bus, der viele Teilnehmer versorgen kann, da diese per Adresse identifiziert werden. Auch mehrere LCD sind möglich.

Wenn du das Display im 4Bit Modus wilst nutzen gibts sehr viele Beispiele, jedoch kenne keinen was nutzt I2C Pins

Ich spreche hier von einem Arduino UNO R3 mit dem ATmega328P Controller oder anderen mit dem gleichen Controller.

Der 4 Bit Bus braucht mindestens 7 Ausgänge.
Oft hat man einige digitale ( D0 bis D14) bereits belegt. Da man die Pins A0 bis A5 auch als Digitale Pins (D14 bis D19) verwenden kann, nimmt man diese.
A4 und A5 sind analoge Eingänge aber auch digitale Ein/Ausgänge und dort ist eben auch die I2C Schnittstelle. Wenn man weder I2C noch so viele analoge Eingänge bracht nimmt man sie also als Digitale.

Auch andere Pins haben dreifach bis vierfach oder noch mehr Belegung. Etwas vereinfacht gesagt: D0 und D1 die Serielle Schnittstelle, D2 und D3 haben spezielle Interruptfunktionen, D11, D12 und D13 sind die SPI Schnittstelle, alle Pins haben eine etwas eingeschränkte Interruptfunktion. 6 Pins haben PWM funktion, Viele können über Timer und Counter Ausgänge oder Eingänge sein und zuletzt auch die Pins für den Quarz können bei Benutzung des internen Takts (nicht beim UNO) als Ein/Ausgänge benutzt werden- Sogar der Reset-Pin hat eine Zusatzfunktion um bei einem vollständig Blockierten Controller diesen auf Anfangskonfiguration zurückzubringen.

Grüße Uwe

bitte verlinke einen derartigen Beitrag damit wir sehen was du gesehen hast.

  • Im HelloWorld Sketch der 4bit parallel Anbindung werden diese Pins verwendet
const int rs = 12, en = 11, d4 = 5, d5 = 4, d6 = 3, d7 = 2;
  • im HelloWorld Sketch der "Standard" I2C Anbindung wird zwar A4/A5 verwendet (weil es die I2C pins sind), aber die Ansteuerung erfolgt durch den PCF8574.
    Da es ein I2C Bus ist, kannst du andere Geräte (mit anderen Adressen) am I2C Bus betreiben.