in der Bibliothek "LiquidCrystal_I2C" befindet sich eine aus meiner Sicht überflüssige Datei "LiquidCrystal_I2C.o" mit einer Größe von 41 KB. Im Repository auf Github ist sie nicht vorhanden. Ich habe versucht, den Maintainer (ursprünglich Marco Schwartz, Weiterleitung zu John Rickman) zu kontaktieren, habe aber keine Ahnung, wie das zu bewerkstelligen ist. Für einen Tipp wäre ich dankbar.
Schon klar, hat aber in einer Bibliothek, also an dieser Stelle, nichts zu suchen, denke ich, zumal die dortigen Dateien insgesamt nicht mehr ganz frisch sind. Die .h und .o-Datei sind vom 21.05.2018, die .cpp ist vom 30.04.2019, die Dateien auf Github sind alle älter. Ich schätze mal, der Compiler interessiert sich für diese Datei überhaupt nicht.
Bei mir kommt das aus dem Bibliotheksmanager, was ich für sehr bedenklich halte und deshalb überhaupt aktiv wurde. Im .zip von github ist es natürlich nicht drin.
Leider nicht kompatibel. Das Display ist ein SBC-LCD20X4. Im Netz wird bei allen Händlern auf die LiquidCrystal_I2C verwiesen, also bei allen, die ich besucht habe.
Es gibt einen ganzen Sack voll LiquidCrystal_I2C von verschiedensten Autoren. Evtl. mal die anderen testen. Das sich lange nichts an derartigen Libs getan hat, ist normal, da sich die Hardware der Displays auch nicht geändert hat.
// include the library code:
#include "Wire.h"
#include "Adafruit_LiquidCrystal.h"
// Connect via i2c, default address #0 (A0-A2 not jumpered)
Adafruit_LiquidCrystal lcd(0);
Mit meist benutzten LCD mit PCF Chip macht die bei mir Probleme = LCD Tot
änderung der Adresse, bringt auch nichts
Adafruit_LiquidCrystal lcd(0x3F);
Benutzt wurde Beispiel aus der Lib
/*
Demonstration sketch for Adafruit i2c/SPI LCD backpack
using MCP23008 I2C expander
( http://www.ladyada.net/products/i2cspilcdbackpack/index.html )
This sketch prints "Hello World!" to the LCD
and shows the time.
The circuit:
* 5V to Arduino 5V pin
* GND to Arduino GND pin
* CLK to Analog #5
* DAT to Analog #4
*/
// include the library code:
#include "Wire.h"
#include "Adafruit_LiquidCrystal.h"
// Connect via i2c, default address #0 (A0-A2 not jumpered)
Adafruit_LiquidCrystal lcd(0x3F);
void setup() {
// set up the LCD's number of rows and columns:
lcd.begin(16, 2);
// Print a message to the LCD.
lcd.print("hello, world!");
}
void loop() {
// set the cursor to column 0, line 1
// (note: line 1 is the second row, since counting begins with 0):
lcd.setCursor(0, 1);
// print the number of seconds since reset:
lcd.print(millis()/1000);
lcd.setBacklight(HIGH);
delay(500);
lcd.setBacklight(LOW);
delay(500);
}
Da bin ich jetzt mal raus.
Wir hatten erst vor einigen Wochen ein Oled von da - an dem Ding haben wir uns die Zähne ausgebissen.
Überall geht alles - nur bei dem Display nicht. Ich glaub wir haben 10 Tage gesucht und es dann bis auf eine Funktion zum laufen bekommen.....
kannst du ja machen. Aber ernsthaft, LCD libs gibts es doch schon einige. Heute würde ich keine neue LCD lib anfangen.
Selber würde ich natürlich meine eigene LCD Lib verwenden.
Eine Lib für unterschiedliche Hardware (parallel, PCF, MCP Varianten mit SPI und I2C, LCDs mit nativer I2C Schnittstelle).
Außerdem kann sie UTF-8 Zeichen richtig darstellen (wenn das Zeichen im LCD-ROM vorhanden ist - und man den richtigen Converter auswählt).