Unterschied zwischen MISO / MOSI und TxD / RxD

8

Was ist der Unterschied zwischen USART und SPI? Es gibt [TXD / RXD] für USART und [MISO / MOSI / SCK / SS] für SPI. Ich weiß, dass SPI ein synchrones Protokoll ist, aber USART ist Hardware. Aber was ist der Unterschied zwischen dem synchronen Teil von USART und der Hardware?

user18118
quelle
1
Ein USART, der im synchronen Modus arbeitet, ist nicht unbedingt vollständig mit SPI inkompatibel. Der asynchrone Modus ist jedoch insofern ganz anders, als das Timing aus den Daten wiederhergestellt werden muss, da keine separate Uhr gesendet wird.
Chris Stratton

Antworten:

8

USART ist ein Gerät (oder Peripheriegerät). SPI ist eine Standardmethode zum Verbinden von Dingen.

USART steht für Universal Synchronous / Asynchronous Receiver / Transmitter und ist die Grundvoraussetzung für die Übertragung mit RS-232.422 / 485 / etc. Der synchrone Teil eines USART wird nicht sehr oft verwendet, und manchmal wird die Funktionalität des Geräts weggelassen - und dann wird er als UART (ausgesprochen You-Art) bezeichnet.

USARTs (mit einem geeigneten RS-232 / etc-Treiber / Empfänger) werden hauptsächlich verwendet, um mit Geräten über ein Kabel zu kommunizieren. Manchmal werden sie verwendet, um zwischen Geräten auf derselben Platine oder in derselben Box zu kommunizieren. Es ist jedoch weitaus üblicher, über ein Kabel mit einem anderen Gerät zu kommunizieren.

SPI, der Serial Peripheral Interface Bus , ist etwas völlig anderes als ein USART. SPI wird hauptsächlich verwendet, um mit Geräten auf derselben Platine oder in derselben Box zu kommunizieren. Zum Beispiel eine MCU, die mit einem digitalen Temperatursensor spricht. Es wird fast nie verwendet, um über ein Kabel von Box zu Box zu sprechen.

Das Schöne an SPI ist, dass es sehr einfach ist und die Geräte, die SPI verwenden, keine MCUs sein müssen. USARTs erfordern fast immer, dass sich MCUs an beiden Enden der Kommunikationsverbindung befinden. USARTs können jedoch mit weniger Kabeln über größere Entfernungen verbunden werden.


quelle
7

Es gibt einen großen Unterschied zwischen USART und SPI. Synchronisation

UART ist asynchron - Das bedeutet, dass die Kommunikation kein Taktsignal begleitet. Es werden nur Datensignale zusammen mit manchmal optionalen Flusssteuersignalen (RTS, CTS, DTR, DSR usw.) angeschlossen. UART kann Vollduplex oder Halbduplex sein. RxD überträgt Daten von DCE zu DTE. TxD überträgt Daten von DTE zu DCE. UART ist auch eine Punkt-zu-Punkt-Verbindung, es gibt einen Sender und einen Empfänger auf der gesamten Verbindung.
UART-Verbindung

SPI ist synchron - Das bedeutet, dass das Taktsignal das Datensignal begleitet. MOSI - Master Out Slave In; MISO - Master In Slave Out; SCK - Taktsignal vom Master zum Slave; SS - Slave-Auswahlsignal wählt Slave-Geräte aus. SPI ist ein Bus und kann mehrere Geräte am Bus haben. Aufgrund eines vorhandenen Taktsignals kann SPI schneller als UART betrieben werden.
SPI-Verbindung

Chetan Bhargava
quelle
2

Das Synchrone (U * S * ART) wird kaum jemals verwendet. Wenn es so ist, ist es SPI eigentlich ziemlich ähnlich. Tatsächlich nennen viele Mikrocontroller (einen) den synchronen Modus (die synchronen Modi), den SPI-Modus. Einige Beispiele finden Sie hier und hier .

Akhil
quelle