Hallo, da ich neu in diesem Forum bin, grüße ich erst mal die User freundlich.
Ich bin an die 60 und habe mir einen Arduino Uno zugelegt, um der Demenz entgegen zu wirken.
Realisieren möchte ich einen kleinen Mehrfach-Temperaturregler für mehrere Messstellen und mehreren Aktoren. Ein I²C-Display (16x2) angeschlossen, funktioniert auch einwandfrei, bis auf Umlaute.
Zur Ansteuerung des Displays habe ich zwei Fragen. Die Anschlüsse des I²C-Displays, Anzahl vier, Plus/Minus und 2x für den Bus, sind an den Analogen Eingängen A4 und A5 angeschlossen, nicht an SDA und SCL, die sich ja auf der Digitalen Seite befinden.
Ich dachte A4 und A5 sind nur analoge Eingänge. Sind das auch analoge Ausgänge?
Warum verwendet man in der LiquidCrystal_I2C.h nicht den entsprechenden Bus SDA und SCL? Dadurch könnte man die beiden Analogen Anschlüsse anderweitig nutzen.
Wenn mich da jemand erleuchten würde, wäre ich dankbar.
Der ATmega328 kann seine Pins multifunktional verwenden. Daher können A4 und A5 als analoge Eingänge, digitale Ein- und Ausgänge, aber auch für I2C verwendet werden. Die Anschlüsse SCL und SDA sind mit A4 und A5 einfach nur auf der Platine verbunden.
Finnlay:
Da kommt eine nächste Frage bei mir auf. Und warum funktioniert das Display dann nicht, wenn ich die SDA und SCL-Anschlüsse statt A4 und A5 verwende?
Da ich mir nicht merken, welche Funktion A4 und A5 beim I2C-Bus haben, nutze ich immer SCL und SDA. Du sprichst doch von den Anschlüssen 13/GND/AREF/SDA/SCL?
Finnlay:
Das bedeutet aber auch A4 und A5 können nicht anderweitig genutzt werden, wenn man den I²C-Bus verwendet, richtig?
Genau, können nicht genutzt werden.
Es ist manchmal auch problematisch ein I2C Devisce an SDA und SCL anzuschließen und ein anderes auf A4/A5. Besser alles auf eine der beiden Pins.
Ein I²C-Display (16x2) angeschlossen, funktioniert auch einwandfrei, bis auf Umlaute.
nur wenige meiner bilig-LCD's haben tatsächlich deutsche Umlaute. Außer der Reihe nach ausprobieren kannst nicht machen und wenn doch, musst trotzdem rausfinden, wie du das über LCD.print zum LCD schickst.
Aber schau dir mal das Beispiel der SpecialChars an und definiere dir deine eigenen Umlaute. Der Vorteil davon ist, dass du dann unabhängig vom verwendeten Zeichensatz bist und deine Umlaute garantiert auf allen LCDs funktionieren.
Es gibt den Treiberchip mit verscheidenen Fonts.
HD44780UA00FS mit "Japanese standard font"
und HD44780UA02FS mit "European standard font"
(Mir sind bisher nur welche mit A00 untergekommen.)
Dazu gibt es zwei Tabellen
auf Seite 17 für ROM Code: A00
auf Seite 18 für ROM Code: A02
Du musst den jeweils "richtigen" Code verwenden. Je nachdem, welchen Chp du hast.
Finnlay:
Nachtrag: Da sind auch nicht alle Umlaute drin.
Richtig erkannt
Da kannst du dann mit den "custom characters" arbeiten. Man kann meist 8 eigene Zeichen generieren.