Hallo
Es war doch nicht so kompliziert wie ich vermutete. In der SD-Library des Arduino sind glücklicherweise drei SPI-Betriebsarten vorgesehen. Neben Software- und Hardware-SPI mit der SPI-Library ist noch die direkte SPI-Ansteuerung ohne Library vorgesehen. Diese habe ich durch die Ansteuerung des USART ersetzt. Und siehe da, es funzt. Die Infos und das Setup des USART habe ich von hier: http://www.gammon.com.au/forum/?id=10892&reply=3#reply3
Meine geänderte SD-Library habe ich angehängt. Das Pinout:
NANO 3.0 -- SD-Card
D0 (MOSI) - MOSI (SD-DI) : SPI Master out Slave in
D1 (MISO) - MISO (SD-DO) : SPI Master in Slave out
D2 -------- CS (SD-CS) : Chipselect for TF Card,
D4 (SCK) -- CLK (SD-Clock): SPI Clock
Wobei das Chipselect frei wählbar ist und beim Start der Library als Parameter übergeben wird.
Der USB-Chip auf dem Nano dürfte wohl keinen Schaden nehmen, weil zwischen Mega328 und USB-Chip in den Rx/Tx-Leitungen je ein 1K-Widerstand eingebaut ist.
Vielleicht kann das ja mal jemand gebrauchen.
Gruß
Micha
Lesezeichen