Hallo! Ich habe ein TFT LCD Display Shield für ein Arduino Uno, welches auch einen SD-Kartenleser hat via SPI. Ich möchte dies jetzt auf einem Mega nutze, hier sind die Hardware SPI Pins aber ja an einer anderen Stelle. Ich möchte dafür jetzt Software SPI nutzen, komme aber nicht wirklich voran und erhalte schon beim kompilieren etliche Fehlermeldungen. Hat einer eine Idee wie ich das umsetzen kann?
ich nicht... aber hier hat jemand 2 Lösungen: 1. die Hardware-SPI-Pins auf den Mega anpassen/umlöten oder 2. die SD.h-library bearbeiten.
Trotzdem bitte gerne nochmal das verwendete Shield verlinken.
top! Die Anpassung der SD.h klappt. Ich nutze aktuell dieses Shield : https://de.aliexpress.com/item/32992884961.html?spm=a2g0o.order_list.order_list_main.32.39865c5fDMlbN0&gatewayAdapt=glo2deu
Steige aber auf das um: https://de.aliexpress.com/item/1005006546844069.html?spm=a2g0o.order_list.order_list_main.4.39865c5fDMlbN0&gatewayAdapt=glo2deu
Eine weitere Möglichkeit ist, die UNO-Pins für SPI mittels SoftSPI anzusteuern:
#include "SdFat.h" // Version 2.1.2 mit angepaßter SdFatConfig.h
#if SPI_DRIVER_SELECT == 2 // Must be set in SdFat/SdFatConfig.h
const uint8_t SOFT_MISO_PIN = 12;
const uint8_t SOFT_MOSI_PIN = 11;
const uint8_t SOFT_SCK_PIN = 13;
const uint8_t SD_CS = 10;
SoftSpiDriver<SOFT_MISO_PIN, SOFT_MOSI_PIN, SOFT_SCK_PIN> softSpi; // SdFat software SPI template
#define SD_CONFIG SdSpiConfig(SD_CS, DEDICATED_SPI, SD_SCK_MHZ(0), &softSpi) // Speed argument is ignored for software SPI.
SdFat sd; // FAT16/FAT32
This topic was automatically closed 180 days after the last reply. New replies are no longer allowed.