Witam.
Posiadam ekran LCD 16x2 I2C LCM1602 (PCF8574T) z biblioteką LiquidCrystal_I2C oraz mały wyświetlacz Grove 7 segmentowy 4 digit z oficjalną biblioteką Grove na płytce Arduino Leonardo Atmega32u4 (wszystko zostało zakupione u "oficjalnego" dystrybutora arduino, więc to nie klon).
Problem polega na tym, że wyświetlacz Grove nie działa razem z ekranem LCD.
Samo Arduino jest dodatkowo zasilane przez złącze DC.
Jeżeli wykonuje kod w np. ten sposób:
Grove pokaże 1 2 3 4, ekran LCD się załaduje z zawartością, natomiast jeżeli spróbuję w loop() dodać jakiekolwiek funkcje dotyczące Grove po prostu nic nie wyświetli.
Jeżeli zrobię w ten sposób:
Grove kompletnie nie da znaku życia.
Wygląda jakby biblioteka LiquidCrystal_I2C w jakiś sposób kolidowała z TM1637. Jeżeli w kodzie nie mam nic dotyczącego LiquidCrystal wtedy Grove działa poprawnie bez żadnych problemów. Dodam, że w Grove usunąłem dwa rezystory (tak jak było wskazane w wielu poradnikach) C3 oraz C4.
Proszę o pomoc, ponieważ przejrzałem już chyba cały internet i nadal nie mogę znaleźć rozwiązania.
Posiadam ekran LCD 16x2 I2C LCM1602 (PCF8574T) z biblioteką LiquidCrystal_I2C oraz mały wyświetlacz Grove 7 segmentowy 4 digit z oficjalną biblioteką Grove na płytce Arduino Leonardo Atmega32u4 (wszystko zostało zakupione u "oficjalnego" dystrybutora arduino, więc to nie klon).
Problem polega na tym, że wyświetlacz Grove nie działa razem z ekranem LCD.
Samo Arduino jest dodatkowo zasilane przez złącze DC.
Jeżeli wykonuje kod w np. ten sposób:
Kod:
#include "TM1637.h"
#include <LiquidCrystal_I2C.h>
LiquidCrystal_I2C lcd(0x27,16,2);
TM1637 tm1637(2, 4);
void setup() {
tm1637.init();
tm1637.set(5);
tm1637.display(0, 1);
tm1637.display(1, 2);
tm1637.display(2, 3);
tm1637.display(3, 4);
lcd.init();
lcd.backlight();
lcd.print("Ladowanie..");
}
void loop() {
tm1637.clearDisplay();
tm1637.display(0, 0);
}
Grove pokaże 1 2 3 4, ekran LCD się załaduje z zawartością, natomiast jeżeli spróbuję w loop() dodać jakiekolwiek funkcje dotyczące Grove po prostu nic nie wyświetli.
Jeżeli zrobię w ten sposób:
Kod:
#include "TM1637.h"
#include <LiquidCrystal_I2C.h>
LiquidCrystal_I2C lcd(0x27,16,2);
TM1637 tm1637(2, 4);
void setup() {
lcd.init();
lcd.backlight();
lcd.print("Ladowanie..");
tm1637.init();
tm1637.set(5);
tm1637.display(0, 1);
tm1637.display(1, 2);
tm1637.display(2, 3);
tm1637.display(3, 4);
}
void loop() {
}
Grove kompletnie nie da znaku życia.
Wygląda jakby biblioteka LiquidCrystal_I2C w jakiś sposób kolidowała z TM1637. Jeżeli w kodzie nie mam nic dotyczącego LiquidCrystal wtedy Grove działa poprawnie bez żadnych problemów. Dodam, że w Grove usunąłem dwa rezystory (tak jak było wskazane w wielu poradnikach) C3 oraz C4.
Proszę o pomoc, ponieważ przejrzałem już chyba cały internet i nadal nie mogę znaleźć rozwiązania.