(14-11-2019, 20:59)luko91 napisał(a): [ -> ]przy podaniu standarowego adresu (0x27) wyswietlała się tylko pierwsza linia jako prostokąty , po podaniu adresu 0x3F wyświetliły się 2 linie prostokątów.
Wyświetlacz 16 x 2 . Jakieś pomysły ?
Inne połączenie wyprowadzeń PFC8574 niż zadeklarowane w bibliotece.
Da się to obejść ? Znalazłem wersję z takim kontruktorem:
@param lcd_Addr[in] I2C address of the IO expansion module. For I2CLCDextraIO,
the address can be configured using the on board jumpers.
@param En[in] LCD En (Enable) pin connected to the IO extender module
@param Rw[in] LCD Rw (Read/write) pin connected to the IO extender module
@param Rs[in] LCD Rs (Reset) pin connected to the IO extender module
@param d4[in] LCD data 0 pin map on IO extender module
@param d5[in] LCD data 1 pin map on IO extender module
@param d6[in] LCD data 2 pin map on IO extender module
@param d7[in] LCD data 3 pin map on IO extender module
LiquidCrystal_I2C(uint8_t lcd_Addr, uint8_t En, uint8_t Rw, uint8_t Rs, uint8_t d4, uint8_t d5, uint8_t d6, uint8_t d7, uint8_t backlighPin, t_backlighPol pol);
Pytanie jak to ustawić?
pokaz kod co próbujesz bo jest duzo niewiadomych
Kod jest z przykładu.
Kod:
#include <Wire.h>
#include <LiquidCrystal_I2C.h>
LiquidCrystal_I2C lcd(0x3F,16,2);
void setup()
{
lcd.init(); // initialize the lcd
lcd.init();
// Print a message to the LCD.
lcd.backlight();
lcd.setCursor(3,0);
lcd.print("Hello, world!");
}
Sprubuj
LiquidCrystal_I2C lcd(0x3f, 2, 1, 0, 4, 5, 6, 7, 3, POSITIVE);
A setup zmień na
void setup()
{
lcd.begin(20, 4);
// Print a message to the LCD.
lcd.setCursor(0,0);
lcd.print("Hello, world!");
}
Niestety nie pomogło. Zauważyłem ze działa funkcja lcd.noBacklight();
zapomniało mi się że setup jest jednorazowy spróbuj tak
void setup()
{
lcd.begin(20, 4);
}
viod loop()
{
// Print a message to the LCD.
lcd.setCursor(0,0);
lcd.print("Hello, world!");
delay(250);
}
resztę jak wyżej pisałem
Jak nie pomoże usuń wszystkie biblioteki od
Newliquidcrystal i wgraj ta
https://www.easypaste.org/file/MUvw3QA1/...ar?lang=pl
i sprawdź ten kod co pisałem
Niestety nie zdziała. natomiast jak wykorzystałem przykłady i podmieniłem na mój adres 0x3f, to wyświetlacz się włączał i wyłączał. Niestety świeciły się same kwadraciki.
(18-11-2019, 18:51)luko91 napisał(a): [ -> ]Niestety nie zdziała. natomiast jak wykorzystałem przykłady i podmieniłem na mój adres 0x3f, to wyświetlacz się włączał i wyłączał. Niestety świeciły się same kwadraciki.
Analizator w dłoń i naprzód.
- Sprawdź co się dzieje na I2C.
- Sprawdź co jest wysyłane do LCD.
A mi sie coś pomyliło bo powinno być tera zauważyłem..
lcd.begin(16,2);