154
ATmega16M1/32M1/64M1 [DATASHEET]
8209E–AVR–11/2012
18.5
Register description
18.5.1
MCUCR – MCU Control Register
Bit 7– SPIPS: SPI Pin Redirection.
Thanks to SPIPS (SPI Pin Select) in MCUCR Sfr, SPI pins can be redirected.
When the SPIPS bit is written to zero, the SPI signals are directed on pins MISO, MOSI, SCK and SS
When the SPIPS bit is written to one,the SPI signals are directed on alternate SPI pins, MISO_A, MOSI_A,
SCK_A and SS_A
Note that programming port is always located on alternate SPI port.
18.5.2
SPCR – SPI Control Register
Bit 7 – SPIE: SPI Interrupt Enable
This bit causes the SPI interrupt to be executed if SPIF bit in the SPSR Register is set and the if the Global Inter-
rupt Enable bit in SREG is set.
Bit 6 – SPE: SPI Enable
When the SPE bit is written to one, the SPI is enabled. This bit must be set to enable any SPI operations.
Bit 5 – DORD: Data Order
When the DORD bit is written to one, the LSB of the data word is transmitted first.
When the DORD bit is written to zero, the MSB of the data word is transmitted first.
Bit 4 – MSTR: Master/Slave Select
This bit selects Master SPI mode when written to one, and Slave SPI mode when written logic zero. If SS is config-
ured as an input and is driven low while MSTR is set, MSTR will be cleared, and SPIF in SPSR will become set.
The user will then have to set MSTR to re-enable SPI Master mode.
Bit 3 – CPOL: Clock Polarity
When this bit is written to one, SCK is high when idle. When CPOL is written to zero, SCK is low when idle. Refer
below:
Bit
7
65432
10
SPIPS
–
–PUD
–
IVSEL
IVCE
MCUCR
Read/write
R/W
R
R/W
R
R/W
Initial value
0
00000
00
Bit
76543210
SPIE
SPE
DORD
MSTR
CPOL
CPHA
SPR1
SPR0
SPCR
Read/write
R/W
Initial value
00000000
Table 18-3.
CPOL functionality.
CPOL
Leading edge
Trailing edge
0
Rising
Falling
1
Falling
Rising