Gast
#942443
Hallo, ich versuche die Kommunikation zwischen zwei Mikrocontrollern über die SPI-Schnittstelle zu realisieren. Ein Mikrocontroller wird als Master, der andere als Slave initialisiert. Wenn ich jetzt die Übertragung starte (Master schreibt erstes Byte in SPI-Datenregister), wird das erste Datenbyte vom Master zum Slave übertragen. Gleichzeitig überträgt der Slave (über MISO) ein Byte zum Master. Wenn zum Übertragungsbeginn noch keine Daten beim Slave vorhanden sind, wird dann ein leeres Byte (00h) übertragen oder erkennt der Master das keine Daten vorhanden sind. Mir ist nicht ganz klar, wie ich das Timing gestallten muss. Angenommen ich schreibe einen Befehl (Master an Slave). Jetzt braucht der Slave einige Zeit bis er den Befehl bearbeitet hat und gültige Daten liefern kann. Wenn jetzt der Master das SPI-Datenregister liest und es gibt noch keine gültigen Daten, wird dann 00h gelesen oder erkennt er, dass keine gültigen Daten vorhanden sind und fragt so lange ab bis die gültigen Daten vorhanden sind? Gibt es im Netz eine genaue Erklärung zur SPI-Schnittstelle. Der Artikel auf Wiki hilft mir leider auch nicht weiter. Danke für Eure Hilfe! Gruß Matze