Ich schreibe von meiner Firmware aus auf eine microSD- Karte, dies ist jedoch die Aufgabe mit der niedrigsten Priorität, sodass sie während des Lese- / Schreibvorgangs von anderen Aufgaben unterbrochen werden kann.
Angenommen, ich habe mit dieser microSD-Karte über einen UART kommuniziert. Das Problem während des Lesens wäre, dass der Hardware-RX- FIFO überlaufen würde, so dass die maximale Verzögerung, die ich anstrengen kann, (FIFO-Größe × Bytes / Sekunde) wäre, und während des Schreibens würde es kein Problem geben, da das andere Ende nur warten würde, bis ich es bin Sende das nächste Zeichen.
Wie funktioniert das jetzt mit SPI? Ist die Situation die gleiche, die für Schreibvorgänge keine Rolle spielt und für Lesevorgänge von der SPI-FIFO-Größe abhängt?
quelle
Wenn Sie eine Kopie der Spezifikation überprüfen (die ich aus Copyright- / NDA-Gründen nicht zitieren kann), wird die SPI-Rate ab 0 Hz angegeben, was bedeutet, dass der statische Betrieb in Ordnung ist. Unter SPI erhalten Sie Daten nur zurück, während das Gerät getaktet wird. Wenn Sie also ein Hardware-SPI verwenden, erhalten Sie etwas erst, nachdem Daten gesendet wurden (auch wenn 0 / egal). In dieser Hinsicht unterscheidet es sich von einem UART, bei dem Sie jederzeit unerwünschte Daten zurückerhalten können.
quelle