Skocz do zawartości

Zła komunikacja czujnika kolorów z arduino przez I2C


KubaJ2000x

Pomocna odpowiedź

Próbuję zgrać ze sobą Arduino Uno i czujnik kolorów TCS34725FN. Na serial monitorze nic się nie pojawia, dopiero przy losowym wyjmowaniu przewodów z SDA i SCL zaczynają się pojawiać pojedyncze komunikaty na ekranie. Nie mam pojęcia co zrobić, żeby zaczęło działać. Testowałem to na programie od producenta.

#include <Wire.h>
#include <GroveColorSensor.h>
 
void setup()
{
    Serial.begin(9600);
    Wire.begin();
}
 
void loop()
{
    int red, green, blue;
    GroveColorSensor colorSensor;
    colorSensor.ledStatus = 1;            // When turn on the color sensor LED, ledStatus = 1; When turn off the color sensor LED, ledStatus = 0.
    while(1)
    {
        colorSensor.readRGB(&red, &green, &blue);    //Read RGB values to variables.
        delay(300);
        Serial.print("The RGB value are: RGB( ");
        Serial.print(red,DEC);
        Serial.print(", ");
        Serial.print(green,DEC);
        Serial.print(", ");
        Serial.print(blue,DEC);
        Serial.println(" )");
        colorSensor.clearInterrupt();
    }
}

 

Link do komentarza
Share on other sites

@KubaJ2000x witam na forum 🙂 Jakie dokładnie Arduino posiadasz? Jaki dokładnie moduł czujnika? Czy próbowałeś łączyć te płytki z pominięciem płytki stykowej? Czy komunikaty, które pojawiają się podczas ruszania przewodami są poprawne?

Link do komentarza
Share on other sites

Zarejestruj się lub zaloguj, aby ukryć tę reklamę.
Zarejestruj się lub zaloguj, aby ukryć tę reklamę.

jlcpcb.jpg

jlcpcb.jpg

Produkcja i montaż PCB - wybierz sprawdzone PCBWay!
   • Darmowe płytki dla studentów i projektów non-profit
   • Tylko 5$ za 10 prototypów PCB w 24 godziny
   • Usługa projektowania PCB na zlecenie
   • Montaż PCB od 30$ + bezpłatna dostawa i szablony
   • Darmowe narzędzie do podglądu plików Gerber
Zobacz również » Film z fabryki PCBWay

Też mi się tak wydaje żeby zamiast wire zrobić beton z tym colorem i tworzenie obiektu klasy wywalić do obszaru globalnego a nie tworzyć w loop...poza tym tu nie ma żadnej komunikacji i2c, żadnego odbierania ani nadawania...

Link do komentarza
Share on other sites

Mam arduino uno r3 a ten moduł to dokładnie Grove TCS34725FN. Od razu łączyłem bezpośrednio moduł do arduino. A komunikaty, które się pojawiają jak już trochę poruszam są poprawne (nie wiem czy dobrze mierzy, ale wyświetla wartości w serial monitorze). Co do rezystorów podciągających to nie mogę znaleźć informacji. Jest możliwość podpięcia sda i scl z czujnika do a4 i a5? Bo jak już łączy to wyświetla komunikaty, wiec to może być problem ze stykami sda i scl w arduino

Link do komentarza
Share on other sites

Udało się w końcu ogarnąć ten czujnik :). Dużo sprawniej idzie komunikacja przez piny a4 i a5. Dodatkowo zmieniłem bibliotekę na tą od Adafruit i wszystko działa poprawnie. Bardzo dziękuje wszystkim za pomoc!

Link do komentarza
Share on other sites

Bądź aktywny - zaloguj się lub utwórz konto!

Tylko zarejestrowani użytkownicy mogą komentować zawartość tej strony

Utwórz konto w ~20 sekund!

Zarejestruj nowe konto, to proste!

Zarejestruj się »

Zaloguj się

Posiadasz własne konto? Użyj go!

Zaloguj się »
×
×
  • Utwórz nowe...

Ważne informacje

Ta strona używa ciasteczek (cookies), dzięki którym może działać lepiej. Więcej na ten temat znajdziesz w Polityce Prywatności.