Close

Připojení displeje 1602 s převodníkem I2C

Úvodní stránka Fórum Vaše projekty Arduino Připojení displeje 1602 s převodníkem I2C

  • Toto téma obsahuje celkem 22 odpovědí. Do diskuze (6 diskutujících) se naposledy zapojil uživatel Jerry a poslední změna proběhla před 7 roky a 2 měsíci.
Aktuálně je na stránce zobrazeno 15 příspěvků - 1. až 15. (celkem z 23)
  • Autor
    Příspěvky
  • #10309
    Jerry
    Účastník

    Zdravím, už nějakou dobu se marně snažím zprovoznit zmiňovaný displej. Displej a převodník jsem si letoval sám po kontrole téměř pod mikroskopem opraveny dva skoro stuďáky. Zkoušel jsem už asi pět knihoven a na žádné se to nespustilo. Adresu převodníku 0x3F jsem získal pomocí zde uvedeného testovacího programu.Po zapnutí displeji svítí podsvícení a po nastavení trimru všech 16 tečkovaných obdélníčků ale pouze v prvním řádku. Po kompilaci se program nahraje displej zhasne jednou problikne (myslím posvícení) obdélníčky zůstanou jak byly ale bez podsvícení a nic se neděje. V každém programu se to chová trochu jinak, ale písmenka to rozhodně neukazuje.Zkoušeno na dvou UNO a jednom NANU pokaždé stejné Nemáte prosím někdo podobnou zkušenost. Díky za každou radu.

    #include <Wire.h>
    #include <LiquidCrystal_I2C.h>
     
    // vytvoří objekt lcd a nastaví jeho adresu
    // 0x3F a 16 zanků na 2 řádcích
    LiquidCrystal_I2C lcd(0x3F,16,2);  
     
    void setup()
    {
      lcd.init();// inicializuje displej
       
      lcd.backlight(); // zapne podsvětlení
      lcd.print("Ahoj lidi..."); // vypíše text
    }
     
    void loop()
    {
    }
    
    
    
    

    //POZOR – na verzi Arduino IDE 1.0.5 většinou nejde přeložit,
    // prosím, použijte novější verzi 1.0.6, děkuji.
    //

    #include <Wire.h>
    #include <LiquidCrystal_I2C.h>

    //nastavíme adresu a typ displeje
    LiquidCrystal_I2C lcd(0x3F,20,4); // nastavení adresy (0x3F) je důležité!!!

    void setup()
    {
    lcd.init(); // initializace lcd

    // Vypíšeme nějaké texty na jednotlivé řádky, adresace je od 0, ne od 1.
    lcd.backlight();
    lcd.setCursor ( 0, 0 );
    lcd.print(“ http://www.santy.cz „);
    lcd.setCursor ( 0, 1 );
    lcd.print(“ Test LCD 2004 I2C „);
    lcd.setCursor ( 0, 2 );
    lcd.print(“ Arduino-Home „);
    lcd.setCursor ( 0, 3 );
    lcd.print(“ http://www.santy.cz „);
    }

    void loop()
    {
    }`

    Díky

    #10310
    ArduXPP
    Účastník

    Už se to tu psalo, stačí otočit trimmer. Je ze zadu u toho převodníku.

    #10311
    Jerry
    Účastník

    Myslím že ne psal jsem v textu že trimr jsem nastavil že rastr svítí je to vidět i na videích. Je to v podstatě na max.

    #10313
    ArduXPP
    Účastník

    Tak ještě zkusit tohle – http://playground.arduino.cc/Main/I2cScanner

    #10314
    ArduXPP
    Účastník

    #include <Wire.h>
    #include <LiquidCrystal_I2C.h>

    // vytvoří objekt lcd a nastaví jeho adresu
    // 0x20 a 16 zanků na 2 řádcích
    LiquidCrystal_I2C lcd(0x20,16,2);

    void setup()
    {
    lcd.init();// inicializuje displej

    lcd.backlight(); // zapne podsvětlení
    lcd.print(„text“); // vypíše text
    }

    void loop()
    {
    }

    Místo 0x20 se dopíše co ukázal skener

    #10316
    Jerry
    Účastník

    To jsem taky již psal v textu. Převodník nalezen adresa změněna na 0x3F. Pokud se zadá jakákoli jiná adresa modul nereaguje vůbec.

    #10317
    ArduXPP
    Účastník

    Tak pak ještě vyzkoušet tenhle kod :

    #include <Wire.h>
    #include <LCD.h>
    #include <LiquidCrystal_I2C.h>

    #define I2C_ADDR 0x3F
    #define BACKLIGHT_PIN 7
    #define En_pin 4
    #define Rw_pin 5
    #define Rs_pin 6
    #define D4_pin 0
    #define D5_pin 1
    #define D6_pin 2
    #define D7_pin 3

    #define LED_OFF 0
    #define LED_ON 1
    LiquidCrystal_I2C lcd(I2C_ADDR,En_pin,Rw_pin,Rs_pin,D4_pin,D5_pin,D6_pin,D7_pin);

    void setup()
    {
    lcd.begin (16,2); // initialize the lcd
    // Switch on the backlight
    lcd.setBacklightPin(BACKLIGHT_PIN,NEGATIVE);
    lcd.setBacklight(LED_ON);
    }

    void loop()
    {

    // Reset the display
    lcd.clear();
    delay(1000);
    lcd.home();

    // Print on the LCD
    lcd.backlight();
    lcd.setCursor(0,0);
    lcd.print(„Hello, world!“);
    delay(8000);
    }

    Musí se použít knihovna tahle https://bitbucket.org/fmalpartida/new-liquidcrystal/downloads .

    #10318
    Jerry
    Účastník

    Díky vyzkouším

    #10319
    Jerry
    Účastník

    Nevím proč je tam definovaných tolik pinů a hlásí mi to chybu při kompilaci

    #10320
    Kysa
    Účastník

    Nevím jestli jsem dobře pochopil, který kód je v arduinu. Protože pokud je to

    //POZOR – na verzi Arduino IDE 1.0.5 většinou nejde přeložit,
    // prosím, použijte novější verzi 1.0.6, děkuji.
    //

    #include <Wire.h>
    #include <LiquidCrystal_I2C.h>

    //nastavíme adresu a typ displeje
    LiquidCrystal_I2C lcd(0x3F,20,4); // nastavení adresy (0x3F) je důležité!!!

    void setup()
    {
    lcd.init(); // initializace lcd

    // Vypíšeme nějaké texty na jednotlivé řádky, adresace je od 0, ne od 1.
    lcd.backlight();
    lcd.setCursor ( 0, 0 );
    lcd.print(“ http://www.santy.cz „);
    lcd.setCursor ( 0, 1 );
    lcd.print(“ Test LCD 2004 I2C „);
    lcd.setCursor ( 0, 2 );
    lcd.print(“ Arduino-Home „);
    lcd.setCursor ( 0, 3 );
    lcd.print(“ http://www.santy.cz „);
    }

    void loop()
    {
    }`

    tak tady se používá display 4×20 znaků.

    #10321
    Jerry
    Účastník

    IDE mám 1.8.0.

    #10322
    Kysa
    Účastník

    O IDE nejde. skuste toto

    #include <Wire.h>
    #include <LiquidCrystal_I2C.h>

    //nastavíme adresu a typ displeje
    LiquidCrystal_I2C lcd(0x3F,16,2); // nastavení adresy (0x3F) je důležité!!!

    void setup()
    {
    lcd.init(); // initializace lcd

    // Vypíšeme nějaké texty na jednotlivé řádky, adresace je od 0, ne od 1.
    lcd.backlight();
    lcd.setCursor ( 0, 0 );
    lcd.print(„Test“);
    lcd.setCursor ( 0, 1 );
    lcd.print(„LCD“);
    }

    void loop()
    {
    }

    #10323
    Jerry
    Účastník

    Chyba při kompilaci deky

    #10324
    Jerry
    Účastník

    já už ani nevím pořádně co tam mám za knihovnu a kde je pořádně vymazat už jsem jich nahrál asi 11 a mám v tom neskutečnej guláš

    #10326
    Jerry
    Účastník

    A proč po zapnutí svítí jen první řádek ? To tak má být nebo už tady je něco špatně ?
    No nic koupím jiný a uvidím tohle není normální. Díky

Aktuálně je na stránce zobrazeno 15 příspěvků - 1. až 15. (celkem z 23)
  • Pro reakci na toto téma se musíte přihlásit.