SPCR Register des ATmega8
Bit 7 – SPIE: SPI Interrupt Enable
Wenn dieses Bit mit einer 1 beschrieben wird, ist der Interrupt des SPI freigegeben. Der Interrupt wird ausgeführt, wenn das I-Bit im SREG gesetzt ist und das SPIF Flag im SPSR Register gesetzt wird.
Bit 6 – SPE: SPI Enable
Wenn dieses Bit mit einer 1 beschrieben wird, ist das SPI freigegeben. Es muss gesetzt werden um alle SPI Operationen freizugeben.
Bit 5 – DORD: Data Order
Wenn dieses Bit mit einer 1 beschrieben ist, werden die Daten mit dem LSB voran übertragen. Wenn dieses Bit gelöscht ist, werden die Daten mit dem MSB voran übertragen.
Bit 4 – MSTR: Master / Slave Select
Wenn dieses Bit mit einer 1 beschrieben ist, ist der Mastermodus ausgewählt, wenn es gelöscht ist, arbeitet die SPI im Slave Modus. Wenn SS als Eingang konfiguriert ist und im Mastermodus auf Low gezogen wird, wid das MSTR Bit gelöscht und das SPIF im SPSR wird gesetzt. Der Anwender muss dann das MSTR Bit wieder setzen um den Mastermodus erneut einzuschalten.
Bit 3 – CPOL: Clock Polatity
Wenn dieses Bit mit einer 1 beschrieben ist, ist SCK auf High, wenn er nicht benutzt wird. Ist das Bit gelöscht, so ist SCK auf Low, wenn er nicht benutzt wird. Siehe Timingdiagramme. Zusammengefasst ist die CPOL Funktion wie folgt:
CPOL |
0 |
1 |
Erste Flanke |
steigend |
fallend |
Folgende Flanke |
fallen |
steigend |
Bit 2 – CPAH: Clock Phase
Dieses Bit legt fest, ob die Daten mit der ersten oder der folgenden Flanke des SCK abgetastet werden. Siehe Timingdiagramme. Zusammengefasst ist die CPAH Funktion wie folgt:
CPAH |
0 |
1 |
Erste Flanke |
abtasten |
einstellen |
Folgende Flanke |
fallen |
einstellen |
Bit 1, 0 – SPR1, SPR0: SPI Clock Rate Select 1 und 0
Dieses beiden Bits kontrollieren die Taktrate SCK des Bausteins wenn er im Mastermodus arbeitet. SPR1 und SPR0 haben keine Auswirkungen im Slavemodus. Die Beziehung zwischen SCK und der Oszillator Taktfrequenz fOSC ist nachfolgend dargestellt:
SPI2X |
SPR1 |
SPR0 |
SCK Frequenz |
0 |
0 |
0 |
fOSC/4 |
0 |
0 |
1 |
fOSC/16 |
0 |
1 |
0 |
fOSC/64 |
0 |
1 |
1 |
fOSC/128 |
1 |
0 |
0 |
fOSC/2 |
1 |
0 |
1 |
fOSC/8 |
1 |
1 |
0 |
fOSC/32 |
1 |
1 |
1 |
fOSC/64 |
Das SPI2X Bit befindet sich im SPI Status Register (SPSR)