INFO: Dieses Forum nutzt Cookies...
Cookies sind für den Betrieb des Forums unverzichtbar. Mit der Nutzung des Forums erklärst Du dich damit einverstanden, dass wir Cookies verwenden.

Es wird in jedem Fall ein Cookie gesetzt um diesen Hinweis nicht mehr zu erhalten. Desweiteren setzen wir Google Adsense und Google Analytics ein.

Antwort schreiben 
 
Themabewertung:
  • 0 Bewertungen - 0 im Durchschnitt
  • 1
  • 2
  • 3
  • 4
  • 5
ESP8266 SD-Card Module für LED Matrix
07.03.2020, 00:03
Beitrag #1
ESP8266 SD-Card Module für LED Matrix
Hallo,
ich bin noch relativ neu mit dem ganzen Thema programmieren und versuche gerade eine kleine LED Matrix mit dem ESP8266 mit einem SD-Card Module zum laufen zu bringen. Ich benutze den Code von hier: https://github.com/marcmerlin/AnimatedGIFs und das ganze funktionierte ein paar Wochen auch ganz super da ich es über das Spiffs laufen ließ. Nun würde ich das ganze gerne über SD Karte laufen lassen und habe das SD-Card Modul wie folgt angeschlossen:
SCK -> D5
MISO -> D6
MOSI -> D7
CS -> D8

Ich hatte dem Sketch Autor vor ein paar tagen eine Mail geschrieben und er meinte ich solle den Code (siehe unten den Code ohne meine Änderung) für mein ESP8266 vom SPIFFs zur SD ändern, auf rückfragen hat er es mir leider auch nicht ausführlicher erklärt und will ihn auch nicht weiter belästigen da mein Englisch nicht das beste ist. Ich versteh aber ehrlich gesagt nicht was ich falsch mache, egal was ich ändere, es passiert nichts auf der Matrix. Kann es sein, dass ich das Modul falsch angeschlossen habe, oder versteh ich einfach nicht was ich im Code ändern muss? Könnt ihr mir da bitte helfen damit ich das ganze zum laufen bekomme?

Code:
#ifndef animatedgif_config
#define animatedgif_config

// control if we decode in 32x32 or 64x64, or something else
#ifdef ESP8266
#define gif_size 32
#else
#define gif_size 64
#endif

/* GifDecoder needs lzwMaxBits
* The lzwMaxBits value of 12 supports all GIFs, but uses 16kB RAM
* lzwMaxBits can be set to 10 or 11 for small displays, 12 for large displays
* All 32x32-pixel GIFs tested work with 11, most work with 10
*/
const int lzwMaxBits = 12;

//#define NEOMATRIX // Switch to NEOMATRIX backend from native SMARTMATRIX backend
#define NEOPIXEL_MATRIX  // If NEOMATRIX, use FastLED::NeoMatrix, not SmartMatrix_GFX

// if you want to display a file and display that one first
#define FIRSTINDEX 0
//#define DEBUGLINE 16

// Use Neomatrix API (which in turn could be using SmartMatrix driver)?
// This is defined in main ino that calls sav_loop
#if defined(NEOMATRIX) ||  defined(ARDUINOONPC)
    // This doesn't work due to variables being redefined. Sigh...
    // instead it's included once from AnimatedGIFs.ino
    //#include "neomatrix_config.h"
#else // NEOMATRIX
    #pragma message "Compiling for Native SmartMatrix"
    // CHANGEME, see MatrixHardware_ESP32_V0.h in SmartMatrix/src
    #define GPIOPINOUT 3
    #define ENABLE_SCROLLING  1
    #if defined (ARDUINO)
        //#include <SmartLEDShieldV4.h>  // uncomment this line for SmartLED Shield V4 (needs to be before #include <SmartMatrix3.h>)
        #include <SmartMatrix3.h>
    #elif defined (SPARK)
        #include "application.h"
        #include "SmartMatrix3_Photon_Apa102/SmartMatrix3_Photon_Apa102.h"
    #endif

    // Neomatrix brightness is different (full brightness can use up 40A) and defined
    // to a different value in neomatrix_config.h
    // range 0-255
    const int defaultBrightness = 255;
    const uint8_t kMatrixWidth = gif_size;        // known working: 32, 64, 96, 128
    const uint8_t kMatrixHeight = gif_size;       // known working: 16, 32, 48, 64
    /* SmartMatrix configuration and memory allocation */
    #define COLOR_DEPTH 24                  // known working: 24, 48 - If the sketch uses type `rgb24` directly, COLOR_DEPTH must be 24
    const uint8_t kRefreshDepth = 24;       // known working: 24, 36, 48
    const uint8_t kDmaBufferRows = 2;       // known working: 2-4
    const uint8_t kPanelType = SMARTMATRIX_HUB75_32ROW_MOD16SCAN; // use SMARTMATRIX_HUB75_16ROW_MOD8SCAN for common 16x32 panels
    //const uint8_t kPanelType = SMARTMATRIX_HUB75_64ROW_MOD32SCAN;
    const uint8_t kMatrixOptions = (SMARTMATRIX_OPTIONS_NONE);    // see http://docs.pixelmatix.com/SmartMatrix for options
    const uint8_t kBackgroundLayerOptions = (SM_BACKGROUND_OPTIONS_NONE);
    const uint8_t kScrollingLayerOptions = (SM_SCROLLING_OPTIONS_NONE);
#endif

// If the matrix is a different size than the GIFs, set the offset for the upper left corner
// (negative or positive is ok).
extern int OFFSETX;
extern int OFFSETY;
extern int FACTX;
extern int FACTY;

// Note, you can use an sdcard on ESP32 or ESP8266 if you really want,
// but if your data fits in built in flash, why not use it?
// Use built in flash via SPIFFS/FATFS
// esp8266com/esp8266/libraries/SD/src/File.cpp
// ESP8266: http://esp8266.github.io/Arduino/versions/2.3.0/doc/filesystem.html#uploading-files-to-file-system
// ESP32: https://github.com/me-no-dev/arduino-esp32fs-plugin
// https://github.com/marcmerlin/esp32_fatfsimage/blob/master/README.md
#if defined(ESP8266)
    #include <FS.h>
    #define FSO SPIFFS
    #if gif_size == 64
        #define GIF_DIRECTORY "/gifs64/"
    #else
        #define GIF_DIRECTORY "/gifs/"
    #endif
    extern "C" {
        #include "user_interface.h"
    }
#elif defined(ESP32)
    //#include <SPIFFS.h>
    //#define FSO SPIFFS
    #include "FFat.h"
    #define FSO FFat
    #define FSOFAT
    // Do NOT add a trailing slash, or things will fail
    #if gif_size == 64
        #define GIF_DIRECTORY "/gifs64"
    #else
        #define GIF_DIRECTORY "/gifs"
    #endif
#elif defined(ARDUINOONPC)
    #include <SPIFFS.h>
    #define FSO SPIFFS
    // Do NOT add a trailing slash, or things will fail
    #if gif_size == 64
        #define GIF_DIRECTORY "/gifs64"
    #else
        #define GIF_DIRECTORY "/gifs"
    #endif
#else
    #define FSO SD
    #define FSOSD
    #if defined (ARDUINO)
    #include <SD.h>
    #elif defined (SPARK)
    #include "sd-card-library-photon-compat/sd-card-library-photon-compat.h"
    #endif
    // Chip select for SD card on the SmartMatrix Shield or Photon
    // Teensy 3.5/3.6
    #if defined(__MK64FX512__) || defined(__MK66FX1M0__)
        #define SD_CS BUILTIN_SDCARD
    #elif defined(ESP32)
        #define SD_CS 5
    #elif defined (ARDUINO)
        #define SD_CS 15
        //#define SD_CS BUILTIN_SDCARD
    #elif defined (SPARK)
        #define SD_CS SS
    #endif
    
    #if defined(ESP32)
        // ESP32 SD Library can't handle a trailing slash in the directory name
        #if gif_size == 64
            #define GIF_DIRECTORY "/gifs64"
        #else
            #define GIF_DIRECTORY "/gifs"
        #endif
    #else
        // Teensy SD Library requires a trailing slash in the directory name
        #if gif_size == 64
            #define GIF_DIRECTORY "/gifs64/"
        #else
            #define GIF_DIRECTORY "/gifs/"
        #endif
    #endif
#endif

#define DISPLAY_TIME_SECONDS 10
#endif
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
08.03.2020, 13:06
Beitrag #2
RE: ESP8266 SD-Card Module für LED Matrix
Bei dir fehlen die Schreib/Lesezugriffe auf die SD-Card.
Sieh dir doch mal die Beispiele der verwendeten SD-Card-Library an

Gruß Dieter

I2C = weniger ist mehr: weniger Kabel, mehr Probleme. Cool
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
10.03.2020, 13:00
Beitrag #3
RE: ESP8266 SD-Card Module für LED Matrix
Wenn du die Serial.print befehle meinst, fehlen die nicht. Diese sind in einer anderen Datei exkludiert worden. Der Autor hat den Sketch so geschrieben das es zwei Config Datein gibt, in denen wohl "einfach" nur das ganze zu deinem Board/Matrix angepasst werden muss. Ich versteh nur nicht wie ich die Config von SPIFFS auf SD-Card für mein ESP8266 ändere.
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
10.03.2020, 15:20 (Dieser Beitrag wurde zuletzt bearbeitet: 10.03.2020 15:48 von Tommy56.)
Beitrag #4
RE: ESP8266 SD-Card Module für LED Matrix
Schau Dir doch mal Beispiele zum Handling von SD-Cards an (z.B. hier). Da siehst Du doch (hoffentlich) ganz schnell, was bei Dir alles fehlt. Das sind nicht die Serial.print!

Gruß Tommy

"Wer den schnellen Erfolg sucht, sollte nicht programmieren, sondern Holz hacken." (Quelle unbekannt)
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
10.03.2020, 15:43
Beitrag #5
RE: ESP8266 SD-Card Module für LED Matrix
(10.03.2020 13:00)JayIIIz schrieb:  Wenn du die Serial.print befehle meinst, fehlen die nicht.......

Du solltest einfach mal genau lesen, was ich geschriieben habe.

Gruß Dieter

I2C = weniger ist mehr: weniger Kabel, mehr Probleme. Cool
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
Antwort schreiben 


Möglicherweise verwandte Themen...
Thema: Verfasser Antworten: Ansichten: Letzter Beitrag
  ESP8266-12E & Pullup I2C rev.antun 33 1.336 Heute 01:46
Letzter Beitrag: rev.antun
  Fehler beim Kompilieren für das Board ESP32 Dev Module. FoxFactoy 17 654 Gestern 21:56
Letzter Beitrag: bm-magic
  ESP8266 exception[9] beim datei schreiben in SPIFFS gk_1 15 315 05.03.2021 11:52
Letzter Beitrag: gk_1
  433 MHz Steckdose mit ESP8266/Alexa schalten Kurt 8 220 04.03.2021 20:20
Letzter Beitrag: hotsystems
  Abgespeckter Sketch für ESP8266 -WLAN Anbindung / Anfänger mizieg 7 394 26.02.2021 17:45
Letzter Beitrag: N1d45
  ESP8266 OTA und Verwendung von TXD0/RXD0 rev.antun 27 1.163 22.02.2021 19:43
Letzter Beitrag: hotsystems
  GPS-Synchronisierung mit NodeMCU-ESP8266 Floke4 3 282 22.02.2021 19:33
Letzter Beitrag: rev.antun
  esp8266 zu html gk_1 9 540 19.02.2021 19:41
Letzter Beitrag: Tommy56
  ESP8266 SD CSV Datei Zeilen rückwärtz RobertHQ 7 498 14.02.2021 19:29
Letzter Beitrag: Corvus
  ESP8266 Webserver nach Zeit nicht mehr verfügbar. ESPWolf 21 2.055 02.02.2021 17:54
Letzter Beitrag: Tommy56

Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste