Go Down

Topic: Probleme mit SPI und SD-Card (Read 749 times) previous topic - next topic

pylon

Quote
Gibt es eine Möglichkeit, die Zustände der relevanten Register des Prozessors vor Aufruf der SPI-Kommunikation zu sichern und dann vor dem erneuten Aufruf der SD-Card wiederherzustellen?


Du kannst die relevanten Register der SPI-Hardware schon retten und später wieder herstellen:

Code: [Select]
byte saved_spcr = 0;
byte saved_spsr = 0;

// save the SPI registers
saved_spcr = SPCR;
saved_spsr = SPSR;

// restore the SPI registers
SPCR = saved_spcr;
SPSR = saved_spsr;

marau

Hallo zusammen,

vielen Dank für die Antworten!

Der Vorschlag von Pylon hat mich weitergebracht, das ganze funktioniert jetzt problemlos!
Nach dem SD-Card-Zugriff rette ich die Registerinhalte der SPI-Schnittstelle, nach der SPI-Kommunikation stelle ich diese wieder her um den nächsten Datensatz einlesen zu können.
Das funktioniert sogar ohne erneutes initialisieren der SD-Card!

Jetzt werde ich mich den nächsten Schritten für das Projekt widmen:

- Entwurf einer Leiterplatte zum koppeln des MEGA mit Display und den Schnittstellen für 'den Rest der Welt'
- Integration der bereits fertiggestellten Peripherie (Relaismatrix für Elektrodentest über I²C)

Danach geht es an das austesten der Netzteile, die Schaltungen habe ich bisher nur mit LTSpice simuliert.

Für dieses Projekt habe ich noch ne Menge Arbeit vor mir, aber dank Eurer Hilfe bin ich jetzt einen Schritt weiter!


Grüße

Martin

Go Up