Na warsztat wezmę popularne wyświetlacze LCD hd44780 wyposażone w interfejs I2C.
Akurat mam dwa wyświetlacze z różnym kolorem podświetlenia i różnymi adresami I2C.
Aby sprawdzić adres urządzeń na magistrali I2C można użyć skryptu i2c scanner.
Do obsługi dwóch wyświetlaczy zainstalowałem bibliotekę:
https://github.com/marcoschwartz/LiquidCrystal_I2C
Użyję lekko zmodyfikowanego przykładu:
#include <wire.h>
#include <liquidcrystal_i2c.h>
LiquidCrystal_I2C lcd(0x27,20,2); // LCD address = 0x27 ; 16 chars, 2 lines
LiquidCrystal_I2C lcd2(0x3f,20,2); // LCD2 address = 0x3f ; 16 chars, 2 lines
void setup()
{
lcd.init();
lcd2.init();
// Print a message to the LCD1
lcd.backlight();
lcd.setCursor(0,0);
lcd.print("* Hello World! *");
lcd.setCursor(1,1);
lcd.print("WeMos to LCD-1");
// Print a message to the LCD2
lcd2.backlight();
lcd2.setCursor(0,0);
lcd2.print("* Hello World! *");
lcd2.setCursor(1,1);
lcd2.print("WeMos to LCD-2");
}
void loop()
{
}
Przy kompilacji widać takie ostrzeżenie:UWAGA: biblioteka LiquidCrystal_I2C działa na architekturze(/architekturach) (avr)
i może nie być kompatybilna z obecną płytką która działa na architekturze(/architekturach) (esp8266).
Mimo tego całość ładnie się kompiluje i flash'uje.Efekt końcowy:
Brak komentarzy:
Prześlij komentarz