MSP430 HardwareSPI vs Software - Geschwindigkeitsunterschied?

Gast #2179025
Lesenswert?

Hallo,
wir steuern aktuell ein Display per serieller Verbindung durch einen 
MSP430. Leider ist das Display nicht an die richtigen Pins am MSP 
angeschlossen, so das wir die serielle Kommunikation "von Hand" 
implementieren mußten.


Diese Kommunikation ist gelinde gesagt, schweinelangsam. Ich hab den 
Code jetzt noch nicht gesehen, vielleicht läßt sich da etwas optimieren.

Aber die entscheidende Frage, selbst wenn man von "perfektem" Code 
ausgeht, gibt es immernoch signifikante Unterschiede zwischen:

SPI an Hardware-SPI vom MSP
SPI an normalen IO Pins, manuell implementiert

Christian
Persönliche Seite #2179037
Lesenswert?

Christian schrieb:
> Aber die entscheidende Frage, selbst wenn man von "perfektem" Code
> ausgeht, gibt es immernoch signifikante Unterschiede zwischen:
>
> SPI an Hardware-SPI vom MSP
> SPI an normalen IO Pins, manuell implementiert

Natürlich. SPI per Bitbanging benötigt pro Bit etliche CPU-Taktzyklen, 
damit sind also bestenfalls ein paar hundert kHz Bitrate hinzubekommen.

SPI in Hardware braucht pro Byte mehrere CPU-Taktzyklen, oder auch 
nicht, wenn ein Puffer beispielsweise per DMA an SPI ausgegeben wird. 
Damit sind hier Bitraten nur durch die Hardware limitiert, also jenseit 
von 1 MHz möglich.


Eine Korrektur des Hardwarelayouts dürfte sich also lohnen.
#2179038
Lesenswert?

ich hab die Frage nicht verstanden...

der Vorteil bei HW SPI ist doch abgesehen von der Geschwindigkeit, dass 
das interruptgesteuert ist, also das der MSP in der ganzen 
Übertragungszeit etwas anderes machen kann, bei Software muss ich das 
Programm halt darum kümmern.

Edit: hmm zu spät...

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren