Probleme mit Grove - Sunlight Sensor am Arduino Mega 2560

Guten Tag,

ich habe folgendes Problem:
Ich bin sehr neu im Thema aber probiere gerade verschiedene Sensoren durch.
Z.b hat der Lux Sensor BH1750 wunderbar funktioniert, während der Grove - Sunlight Sensor V2.0 absolut nicht will.

Ich habe Baud rate sowie verschiedene Kabel und Sensoren angeschlossen um Hardware Fehler auszuschließen. ( ich habe 3 Sunlight Sensors)

wie folgt habe ich verkabelt


Und folgende Libary verwendet

/*
    This is a demo to test Grove - Sunlight Sensor library

*/

#include <Wire.h>

#include "Arduino.h"
#include "SI114X.h"

SI114X SI1145 = SI114X();

void setup() {

  Serial.begin(9600);
  Serial.println("Beginning Si1145!");

  while (!SI1145.Begin()) {
    Serial.println("Si1145 is not ready!");
    delay(1000);
  }
  Serial.println("Si1145 is ready!");
}

void loop() {
  Serial.print("//--------------------------------------//\r\n");
  Serial.print("Vis: "); Serial.println(SI1145.ReadVisible());
  Serial.print("IR: "); Serial.println(SI1145.ReadIR());
  //the real UV value must be div 100 from the reg value , datasheet for more information.
  Serial.print("UV: ");  Serial.println((float)SI1145.ReadUV()/100);
  delay(1000);
}

Aber mir stellt sich die frage, in der beschreibung des Sensors steht das es ein Digitaler ist, und in jedem Video werden Analoge Pins verwendet.
Und müssen die Pins nicht im Programm genau deklariert sein ?

Vielen Dank im vorraus
Stefan

Es kommt nur folgende Fehlermeldung nach Upload:
UNd egal ob ich auf einem I2C, Analog oder Digital Anschluss bin:

Si1145 is not ready!

Zeige mall was für Sensor das ist, Link, es gibt unterschiedliche, so wie immer jeder kocht eigne Suppe :wink:

Lt. der Lib arbeitet er per I2C. Du musst also auf den I2C-Pins SCL und SDA anklemmen. Beim UNO z.B. liegen die auf A5 und A4.

Gruß Tommy

Das ist richtig!
Die Pins A4 und A5 sind AUCH die I2C-Schnittstelle.

Als erstes: Was verwendest Du für einen Controller - Sorry, wenn das auf den Bildern zu sehen ist, den Inhalt sehe ich zur Zeit nicht. (Liegt aber an mir)

Dann kannst Du mal die beiden PIN SDA/SCL (A4/A5) tauschen.

Wenn dann immer noch nichts geht, kannst Du einen Testsketch laufen lassen, der Dir die I2C-Adresse des Sensors ausgeben sollte.
Wenn da auch nix kommt (Auch nicht mit getauschten Anschlüssen) gehts ans suchen...

Hat das Grove Modul auch nicht I2C Pins für Mega( die Vordere am AREF), nur danach ist A4, A5 Tot = nicht benutzbar.

Das weiss ich nicht - ich bin grad dabei nach nem Plan zu suchen.
Der UNO Revision 3 hat doch auch die I2C-Schnittstelle über AREF.

Das heisst aber nicht zwingend, das Du A4/A5 nicht benutzen kannst.... :wink:

Du hast ja auf A0 geklemmt es muss auf I2C drauf, und schauen ob die Pins stimmen nicht das SCL mit SDA vertauscht ist

Wen kein Jumper vorhanden eigentlich nicht.

https://www.distrelec.de/en/grove-sunlight-sensor-seeed-studio-101020089/p/30069858?cq_src=google_ads&cq_cmp=18264957982&cq_con=&cq_term=&cq_med=pla&cq_plac=&cq_net=x&cq_pos=&cq_plt=gp&&cq_src=google_ads&cq_cmp=18264957982&cq_con=&cq_term=&cq_med=pla&cq_plac=&cq_net=x&cq_pos=&cq_plt=gp&gclsrc=aw.ds&gclid=EAIaIQobChMI7NTfkrC7_gIV9GDmCh3XlwMeEAQYAiABEgJep_D_BwE&gclsrc=aw.ds

dieser Hier!!

Also I2C du must schon eine Etage tiefer gehen dort wo I2C drauf steht. Haste ein Uno zum testen? Oder mit Multimeter mall messen ob I2C auch auf den oberen Rechten Pins ist, den die Platine ist eigentlich für Uno gemacht so wie ich das sehe.
Die eingezeichnete Pins müssen Durchgang haben sonst funktioniert das nicht mit einem Mega

Warum so umständlich?
@stefanthebest Dein Stecker steckt blos falsch.
Du musst den nur umstecken:

Ups falscher Adressat :wink:
Es muss funktionieren mit Mega :wink: die Obere I2CPins sind da :wink:
https://www.reichelt.de/arduino-shield-base-shield-v2-ard-shd-base-v2-p191204.html?PROVID=2788&gclid=CjwKCAjw6IiiBhAOEiwALNqncbV8OBZTDAJQq6FDXDBrRmmcwI_rcEeWY3_NJR3ypTIkSdOJp00jqRoC9uUQAvD_BwE

Hab doch geschrieben :wink:

Also
Der UNO hat die Pins SDA/SCL an A4 und A5.
Der Mega 2560 hat die Pins SDA/SCL an den Pins D20/D21
Arduinos der R3 Revision haben die SDA/SCL pins nochmal neben Aref mit dem Aufdruck SDA/SCL herausgeführt.
Wenn man diese Pins (SDA/SCL) als I2C Schnittstelle verwendet darf man die entsprechenden Pins ( A4/A5 bzw D20/D21) nicht verwenden.
Das Grove Shield hat 4 I2C stecker:

Du mußt den Sensor auf einen dieser 4 Stecker anstecken ; Aufschrigt I2C.

versuch mal diesen I2C Scanner:
https://playground.arduino.cc/Main/I2cScanner/
Der müßte Dir eine Zahl (Adresse) ausgeben.
Falls nicht stimmt etwas mit der Verdrahtung oder dem Sensor nicht.

Grüße Uwe

Vielen dank erstmal, ich habe den Scanner laufen lassen und dieses Base Shield weggelassen. Habe den Grove Sunlight Sensor über SDL und SCL angeschlossen und habe die Adresse 0x53 gefunden. jetzt weiß ich aber nicht weiter :s


weat_smile:
Scanner 0x53

Wen ich das gut sehe bist du auf 3,3V die Steckplätze sind aber aber 5V wen ich mich nicht irre?
Schalte mall auf 3,3 um nicht das die 5V nicht durchkommen

Normalerweise lässt sich die Adresse im Konstruktor übergeben.
Aber erzähl mal welche lib Du verwendest.
(Nein, das da oben ist irgendein Example und ich such jetzt nicht, wo das her stammt)

Funktioniert das Modul so wie du jetzt verdrahtet hast = direkt auf den Mega?

This topic was automatically closed 180 days after the last reply. New replies are no longer allowed.