Hallo,
im Forum gibt es zwar schon viele Einträge zu diesem Problem doch keiner konnte eine richtige Lösung finden.
Ich habe einen Arduino Due und möchte über ein Ethernet Shild ihn dort mit einer SD Karte verbinden.
Da der Due mit 3.3V betrieben wird, habe ich das Shild nicht direkt draufgesteckt, sondern nur die 6 SPI Pins verbunden, wobei die 5V duch 3.3V ersetzt wurden. Des Weiteren habe ich Pin 4 als CS verbunden.
Bei der Ethernet-Funktion hatte ich mit dieser Vorgehensweise nie ein Problem.
Ich habe also das Bsp Programm genommen und dies getestet, allerdings bekomme ich im Seriellen Montior immer ausgegeben, dass die SD-Karte nicht erkannt wird.
Die SD-Karte und das Shild funktionieren bei einem UNO mist selben Aufbau problemlos
smile2u:
Die SD-Karte und das Shild funktionieren bei einem UNO mist selben Aufbau problemlos
Ich kenne den DUE nicht, aber vermute, es liegt an den Spannungen. Du solltest Levelshifter dafür einsetzen, damit die Spannungen zusammen passen. Viele der SD-Cardreader haben einen 5 Voltregler Onboard, der dann auch tatsächlich die 5 Volt braucht.
Da der Due mit 3.3V betrieben wird, habe ich das Shild nicht direkt draufgesteckt, sondern nur die 6 SPI Pins verbunden, wobei die 5V duch 3.3V ersetzt wurden. Des Weiteren habe ich Pin 4 als CS verbunden.
Der Fehler dürften die 3V3 am 5V-Pin sein. Das Ethernet-Shield macht selbst die Umwandlung in 3V3 (Spannungswandler), wenn dort aber nicht 5V rein kommen, dann kann nicht mehr 3V3 sondern nur ca. 1V7 erreicht werden, was für die SD-Karte zuwenig sein dürfte.
Die Level-Shifter für die SPI-Leitungen sind auf dem Board (nur für vom Arduino weggehende Leitungen, die vom Shield zurück sind direkt), damit sollte es eigentlich gehen, auch wenn ich das noch nie versucht habe.