- 12V Akku mit 280 Ah bauen         
Seite 3 von 4 ErsteErste 1234 LetzteLetzte
Ergebnis 21 bis 30 von 32

Thema: Zusammstellung: GPS + WiFi + 7-Segment 4-Digit LCD

  1. #21
    HaWe
    Gast
    Anzeige

    E-Bike
    ...bekomme es auf dem Sunfounder UNO R3 zum laufen...Auf dem WeMos D1 sowie dem NodeMCU (beide mit Wifi) kommt nur Kauderwelsch aufs Display. Gibt es dafür eine einfache Erklärung?
    das ist genau das Thema, das ich mit meinem obigen Post bereits angeschnitten hatte:

    Zitat Zitat von HaWe Beitrag anzeigen
    bei nodeMCU kann man von vornherein NIE sicher sein, ob angeschlossene Geräte auf Anhieb funktionieren wie bei "normalen" Arduinos. Vielfach sind Lib-Anpassungen nötig, gerade was Timing (z.B. durch extra eingefügte oder angepasste delay() ) und Bus-Konfigurationen angeht (z.B. für I2C, aber auch für 1-Wire etc.).
    Da hilft nur:
    - entweder in nodeMCU Foren oder Repositories gezielt nach nodeMCU Treibern suchen,
    oder
    - riskiere es, kaufe es, und bete, dass es doch funktioniert

    wenn dein Display einen i2c-Chip hat, dann lass ggf mal als erstes einen i2c-Adress-Scanner damit laufen, ob es überhaupt per Wire() korrekt als Gerät mit seiner Adresse erkannt wird.

    ps,
    ich habe ähnliche Erfahrungen gemacht mit meinen i2c-OLED-Displays, auch da funktionierten keine normaler Arduino-Treiber (ebenso beim 1-Wire Sensor DHT22) , und es halfen erst andere Libs, die speziell angepasst waren für esp8266.
    - Aber teste erst mal mit dem i2c-Scanner (falls es ein I2C Gerät ist)!
    Geändert von HaWe (13.12.2017 um 13:10 Uhr)

  2. #22
    Neuer Benutzer Öfters hier
    Registriert seit
    23.11.2017
    Beiträge
    14
    Scanning...
    No I2C devices found
    Könnte es trotzdem mit der richtigen library funktionieren?

  3. #23
    HaWe
    Gast
    ist denn ein I2C chip drauf?
    ggf. welcher?
    welche Lib verwendest du?

  4. #24
    Neuer Benutzer Öfters hier
    Registriert seit
    23.11.2017
    Beiträge
    14
    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
    }
    }

  5. #25
    HaWe
    Gast
    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) ?

  6. #26
    Neuer Benutzer Öfters hier
    Registriert seit
    23.11.2017
    Beiträge
    14
    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!

  7. #27
    HaWe
    Gast
    haha, gern!

  8. #28
    Neuer Benutzer Öfters hier
    Registriert seit
    23.11.2017
    Beiträge
    14
    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:
    Code:
    if (WiFi.status() == WL_CONNECTED) {
        HTTPClient http;
        http.begin("URL_ZUR_DB");
        int httpCode = http.GET();
    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?

    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...

  9. #29
    Erfahrener Benutzer Robotik Einstein
    Registriert seit
    11.12.2007
    Ort
    weit weg von nahe Bonn
    Alter
    39
    Beiträge
    3.416
    ich kenne mich jetzt mit der HTTP library nicht genug aus, aber grundsätzlich ist paralleles arbeiten auf einem microcontroller ein riesen problem, die haben zwar interrupts die es erlauben die normale code ausführung zu unterbrechen um etwas anderes zu machen aber arduino bietet keine möglichkeit aufgaben gleichzeitig abzuarbeiten

    ich hab mal spontan auf github ne lib gerfunden die das ermöglichen soll aber geteset habe ich jetzt nichts
    https://github.com/ivanseidel/ArduinoThread

    vielleicht kannst du damit was erreichen, ansonsten wäre der nächst beste ansatz für dich einen timer zu benutzen der immer die segmente umschaltet statt einer loop ... in der loop arbietet jetzt nurnoch die webabfrage und wann immer der timer tickt, wird der code kurz unterbrochen um die nächste ziffer umzuschalten
    Es gibt 10 Sorten von Menschen: Die einen können binär zählen, die anderen
    nicht.

  10. #30
    Neuer Benutzer Öfters hier
    Registriert seit
    23.11.2017
    Beiträge
    14
    Timer bzw. Ticker kannte ich noch gar nicht. Klappt jetzt, danke!

Seite 3 von 4 ErsteErste 1234 LetzteLetzte

Ähnliche Themen

  1. nochmal digit. Oszi JYETech 096
    Von HaWe im Forum Elektronik
    Antworten: 12
    Letzter Beitrag: 08.01.2017, 01:35
  2. Arduino Uno WiFi
    Von Holle1976 im Forum Arduino -Plattform
    Antworten: 0
    Letzter Beitrag: 04.01.2017, 18:02
  3. 8-Digit 7-Segmentanzeige am ATM128 ...der Startschuss fehlt für Code
    Von oderlachs im Forum Software, Algorithmen und KI
    Antworten: 5
    Letzter Beitrag: 15.02.2016, 10:49
  4. induktive Drehzahlsensor + digit. Anzeigegerät als Impulsnehmer
    Von Collage im Forum Suche bestimmtes Bauteil bzw. Empfehlung
    Antworten: 0
    Letzter Beitrag: 03.11.2013, 21:51
  5. Suche ein LCD mit nur einem digit
    Von Tryan im Forum Suche bestimmtes Bauteil bzw. Empfehlung
    Antworten: 4
    Letzter Beitrag: 14.04.2009, 18:52

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •  

LiFePO4 Speicher Test