www.mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik spi-ablauf mit daten


Autor: roboterheld (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
beispiel:

SPI_SENDEN:
; MASTER SS auf LOW
  cbi PORTB, 2
; Start transmission of data
  out SPDR,temp
; Wait for transmission complete
SPI_SENDEN_w:
  sbis SPSR,SPIF
  rjmp SPI_SENDEN_w
; MASTER SS auf HIGH
  sbi PORTB, 2
ret

"MASTER SS auf LOW", wenn dieser befehl kommt, wird der slave dann 
automatisch durch diesen befehl die daten empfangen? oder muss ich als 
anwender immer im slave abfragen ob ss auf slow ist und dann den 
datentransfer anschmeissen?

"MASTER SS auf HIGH", muss ich als anwender im slave den ss auf high 
setzen oder macht das auch wieder beim empfang im slave der chip selber 
?

ich habe einen atmega32.

Autor: 2919 (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Der SS wird ueblicherweise gebraucht um die Peripherie zu selektieren. 
SS ist beim Master ein Ausgang. Nichts geschieht von selbst. Schau dir 
mal ein Datenblatt eines SPI Chips (ADC oder dergl.) an.

Autor: Spess53 (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi

Normalerweise brauchst du das SS-Pin bei nur einem Slave überhaupt 
nicht.
Es existiert jedoch eine kleine Falle. Wenn beim Master das SS-Pin als 
Eingang konfigutriert ist, und auf Low gelegt wird, wird der Mastermode 
abgeschaltet.
Im Datenblatt ist übrigens ein C-Beispiel.

MfG Spess

Autor: 2919 (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Sehr oft wird bei der Peripherie der SS gebraucht um die reingeclockten 
Daten zu uebernehmen. Wie bei einem Schieberegister mit Ausgangslatch.

Autor: Spess53 (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi

Dass SS-Pin ist im Mastermode 'user defined'. Für Datenübergabe kann man 
es benutzten. Es geht aber auch jedes andere Portpin.

MfG Spess

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.