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.
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.
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
Sehr oft wird bei der Peripherie der SS gebraucht um die reingeclockten Daten zu uebernehmen. Wie bei einem Schieberegister mit Ausgangslatch.
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
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.