mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik MSP430 9-BIT SPI


Autor: Forsberg (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

kann man mit einem MSP430Fxxx den 9-Bit SPI Modus betreiben ?
Ich habe nur 7- oder 8 Bit Modi in Verbindung mit dem MSP430Fxxx 
gesehen.

Wie steuert man denn dann z.B. das Nokia6100 Display an ?
Das unterscheidet im ersten Bit des Datestroms, ob die restlichen 8 Bit 
einen Befehl oder Daten enthalten.

Software SPI ? Das kann es doch nicht sein.

Danke für eure Hilfe !

Autor: Stefan (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
>MSP430Fxxx
Da fehlt leider genau die Angabe von xxx !!!
Bei den F20xx-Typen beispielsweise ist SPI mit bis zu 16bit möglich!

Autor: Forsberg (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo Stefan,

danke für Antwort.

Wie siehts beim MSP430F1611 aus ?

Ich glaube da gehen nur 7 oder 8 Bit.

Autor: Stefan (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
>Wie siehts beim MSP430F1611 aus ?
>Ich glaube da gehen nur 7 oder 8 Bit.
Würd ich jetzt auch mal so vermuten, gehört schließlich zur 
F1xxx-Familie

Autor: Daniel P. (ppowers)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Also die PICs haben auch nur eine 8-Bit SPI. Da sendet man dann halt 
einfach ein Byte, schaltet die Hardware-SPI ab und schickt den einen 
Clock-Pulse und das zugehörige Datenbit von Hand. Danach Hardware-SPI 
wieder einschalten. Bezweifle, dass es bei den MSP430 komplizierter 
abläuft...

Autor: Forsberg (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

also die dsPICs haben ein 9-Bit SPI Mode.

Was passiert eigentlich nachdem 8 Bit gesendet wurden ?
Kann man direkt weitere 8Bit hinterherschießen ?
Oder wird zwischen den 8-Bit Datenpaketen eine "Pause" auf dem Bus 
eingelegt ?

MfG

Autor: Christian R. (supachris)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Der 1611 kann nur 7 oder 8 Bit. Steht ja auch im User Guide. Den sollte 
man schon mal lesen.

Die F2xx Reihe kann ebenfalls nur 7/8 Bit. Steht auch im User Guide.

Alles, was Vielfache davon sind, ist ja leicht mit mehreren 
Übertragungen machbar, für krumme Werte muss man halt SPI in Software 
machen. Ist ja auch nicht so schlimm.

Autor: Forsberg (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,


das ist schon klar.

Ich habe mich nur gefragt, wieso bei AVR 9-Bit implementiert sind und 
beim MSP430 nicht.

MfG

Autor: Stefan (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@supachris
>Die F2xx Reihe kann ebenfalls nur 7/8 Bit. Steht auch im User Guide.
Das stimmt so nicht, denn die F20xx können eben 16bit!

Autor: Forsberg (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

ich habe einen MSP430F2013 und der kann auch nur 7/8 Bit.

Wie sollen denn da 16Bit gehen ?

MfG

Autor: Stefan (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
>ich habe einen MSP430F2013 und der kann auch nur 7/8 Bit.
>Wie sollen denn da 16Bit gehen ?

MSP430x2xx Family User Guide, p.14-8:

"The Universal Serial Interface (USI) module provides SPI and I2C serial
communication with one hardware module. This chapter discusses both
modes. The USI module is implemented in the MSP430x20xx devices.
...
The 16-bit USISR is made up of two 8-bit registers, USISRL and USISRH.
Control bit USI16B selects the number of bits of USISR that are used for 
data transmit and receive. When USI16B = 0, only the lower 8 bits, 
USISRL, are used.
...
When USI16B = 1, all 16 bits are used for data handling."

Autor: Christian R. (supachris)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Die können auch 14 Bit, 16 Bit, 24 Bit, 32 Bit usw....das ist doch nur 
eine Frage, wieviele Bytes ich hintereinander schicke, bevor ich das CS 
wieder wegnehme. Das CS muss eh manuell bedient werden, die SPI ist 
synchron, also können die Pausen zwischen den Bytes beliebig lang sein, 
es wird ja eh immer nur zur Taktflanke übernommen. Da kann man beliebige 
Vielfache von 7 und 8 Bit schicken.

Im User Guide stehts übrigens auf Seite 499. Außerdem ist der 
Transmit-Buffer und der Receive-Buffer nur 8 Bit Breit, wo sollen da 16 
Bit auf einmal reinpassen? (Seite 517 im User Guide)

Edit: Tatsache, da gibts ja USI auch noch. Ich hatte bei USCI geschaut. 
OK.

Autor: Forsberg (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

na einfach /CS auf High zu ziehen ist ja keine Lösung.

Ich habe mich nur auf USCI bezogen.

MfG

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.