Ding:FabUino I2C LCD
Foto | |
---|---|
Basisdaten | |
Status | funktionstüchtig |
Schöpfer | Udo (Diskussion) |
FabUino I2C-LCD
Bauanleitung für ein Standard LCD zum Anschluss am FabUino im 4-Bit Modus über I2C oder auch als IIC / TWI bezeichnetes Interface
Eine sehr gute Anleitung und ein Video gibt es bei : https://brainy-bits.com/tutorials/connect-a-character-lcd-using-the-i2c-bus/
Die veraltete Bauanleitung: FabUino I2C-LCD Bauanleitung komplett.pdf
Datei:FabUino I2C-LCD Bauanleitung komplett.pdf
Downloads:
Jetzt auch das aktuelle Eagle Layout in SMD und der Schaltplan komplett: Datei:I2C-LCD basic Eagle 7.6.0 Files.zip
NewLiquidCrystal library here: https://brainy-bits.com/wp-content/uploads/2015/02/New_LiquidCrystal_Library.zip
Um es gleich vorweg zu nehmen:
Finanziell lohnt der Nachbau nicht, da mittlerweile fertige Bausteine günstiger über EBay zu bekommen sind,
als einzelne Bauteile (IC) oder die Platinen-Herstellung kostet (kleine Menge = hoher Preis).
Der Nachbau wird MINDESTENS 10-mal teurerer als ein fertiger Baustein aus China.
Fehlerquellen:
Keine Anzeige?
Prüfe zuerst ob der Kontrast richtig eingestellt ist, mehr in Richtung Masse drehen.
Prüfe ob der PCF 8574 Baustein antwortet, verwende den I2C Scanner (http://playground.arduino.cc/Main/I2cScanner)
Sind die PullUp Widerstände auf der Platine? Sind noch andere PullUp Widerstände vorhanden, ggf. entfernen. 1x PullUp für jeweils SCL & SDA (a 10 kR) muss reichen!
Hier ein DEMO Code für die SMD Variante:
// Original Source von: https://brainy-bits.com/tutorials/connect-a-character-lcd-using-the-i2c-bus/ // Hardware von Udo Grohmann // Programmanpassung Udo Grohmann #include <Wire.h> #include <LCD.h> #include <LiquidCrystal_I2C.h> #define I2C_ADDR 0x20 // PCF8574 T all adress bit solder-jumper set to LOW <<- Add your address here. //#define I2C_ADDR 0x38 // PCF8574AT all adress bit solder-jumper set to LOW <<- Add your address here. #define Rs_pin 6 //#define Rs_pin 0 #define Rw_pin 5 //#define Rw_pin 1 #define En_pin 4 //#define En_pin 2 #define BACKLIGHT_PIN 7 //#define BACKLIGHT_PIN 3 #define D4_pin 0 //#define D4_pin 4 #define D5_pin 1 //#define D5_pin 5 #define D6_pin 2 //#define D6_pin 6 #define D7_pin 3 //#define D7_pin 7 LiquidCrystal_I2C lcd(I2C_ADDR,En_pin,Rw_pin,Rs_pin,D4_pin,D5_pin,D6_pin,D7_pin); void setup() { lcd.begin (20,4); // <<-- our LCD is a 20x4, change for your LCD if needed // LCD Backlight OFF lcd.setBacklightPin(BACKLIGHT_PIN,POSITIVE); lcd.setBacklight(LOW); lcd.home (); // go home on LCD lcd.print("Hallo Welt!"); } void loop() { lcd.setCursor (0,1); // go to start of 2nd line lcd.print("www.brainy-bits.com"); lcd.setCursor (0,2); // go to start of 4th line lcd.print("DevUNO I2C LCD AddOn"); lcd.setCursor (0,3); // go to start of 4th line lcd.print("12.06.2016 17:45 Uhr"); delay(500); }
Die verwendbaren Kommandos:
z.B. lcd.clear();
########################################### # Methods and Functions (KEYWORD2) ########################################### begin KEYWORD2 clear KEYWORD2 home KEYWORD2 noDisplay KEYWORD2 display KEYWORD2 noBlink KEYWORD2 blink KEYWORD2 noCursor KEYWORD2 cursor KEYWORD2 scrollDisplayLeft KEYWORD2 scrollDisplayRight KEYWORD2 leftToRight KEYWORD2 rightToLeft KEYWORD2 moveCursorLeft KEYWORD2 moveCursorRight KEYWORD2 autoscroll KEYWORD2 noAutoscroll KEYWORD2 createChar KEYWORD2 setCursor KEYWORD2 print KEYWORD2 write KEYWORD2 println KEYWORD2 backlight KEYWORD2 noBacklight KEYWORD2 on KEYWORD2 off KEYWORD2 setBacklightPin KEYWORD2 setBacklight KEYWORD2 ########################################### # Constants (LITERAL1) ########################################### POSITIVE LITERAL1 NEGATIVE LITERAL1 BACKLIGHT_ON LITERAL1 BACKLIGHT_OFF LITERAL1