Könnte es trotzdem mit der richtigen library funktionieren?Scanning...
No I2C devices found
Könnte es trotzdem mit der richtigen library funktionieren?Scanning...
No I2C devices found
ist denn ein I2C chip drauf?
ggf. welcher?
welche Lib verwendest du?
Sorry, ich habe keine Ahnung von der Hardware
Hier mal der Code, läuft ohne library:
int rck = 5;
int sck = 6;
int dio = 7;
byte num[11]={B11000000, B11111001, B10100100, B10110000,
B10011001, B10010010, B10000010, B11111000, B10000000, B10011000, B01000000};
// 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0.
byte pos[8]={1, 2, 4, 8, 16, 32, 64, 128};
void setup() {
pinMode(rck, OUTPUT);
pinMode(sck, OUTPUT);
pinMode(dio, OUTPUT);
}
int geo[] = {99, 99, 99, 99, 10, 1, 2, 3};
// 99 = " ";
// 10 = 0.
// Ausgabe: " 0.123"
void loop() {
for (int j = 0; j < 8; j++) {
digitalWrite(rck, LOW);
shiftOut(dio, sck, MSBFIRST, pos[j]);
shiftOut(dio, sck, MSBFIRST, num[geo[j]]);
digitalWrite(rck, HIGH);
delay(2); // This keeps the flicker above 60 Hz
}
}
sieht nach Schieberegister aus, damit kenne ich mich aber nicht aus.
Eventuell setze mal ein delay(1) hinter jedes digitalWrite und jedes shiftOut.
Andererseits verwendest du die GPIO-Nummern, nicht die D-Nummern: bist du sicher, dass du richtig verkabelt hast?
http://www.mikrocontroller-elektroni...inbelegung.png
Hast du den richtigen Arduino-Board-Treiber installiert und ausgewählt (nodeMCU 1.0) ?
Andererseits verwendest du die GPIO-Nummern, nicht die D-Nummern: bist du sicher, dass du richtig verkabelt hast?
http://www.mikrocontroller-elektroni...inbelegung.png
Danke!
haha, gern!![]()
![]()
![]()
Jetzt muss ich mich doch noch einmal melden..Ich hänge jetzt seit Stunden an dem gleichen Problem.
Alles läuft soweit wunderbar. Ich frage per GET eine Datenbank ab und gebe die Zahl auf dem Display aus. Das Problem ist, dass die Verbindung zum Server das System blockiert und das Display in der Zeit ausgesetzt ist. Es geschieht an dieser Stelle:
Gibt es eine Möglichkeit, dass ich während des Verbindungsaufbaus trotzdem meinen loop() durchlaufe? Ist es z.B. möglich, die Verbindung im Hintergrund aufzubauen, sodass laufende loops() nicht betroffen sind?Code:if (WiFi.status() == WL_CONNECTED) { HTTPClient http; http.begin("URL_ZUR_DB"); int httpCode = http.GET();
Oder alternativ (wobei ich hier keine wirkliche Chance sehe): Ist es möglich, das Display zu "freezen" und einfach die letzte Zahl stehen zu lassen solange die Verbindung aufgebaut wird? Nach meinem Verständnis kann immer nur ein Segment "stehen bleiben", niemals alle 8 Segmente. Deshalb ja die Endlosschleife...
Lesezeichen