Datasheet
PIC24FJ256GA110 FAMILY
DS30009905F-page 178 2007-2019 Microchip Technology Inc.
To set up the SPI module for the Standard Master mode
of operation:
1. If using interrupts:
a) Clear the SPIxIF bit in the respective IFSx
register.
b) Set the SPIxIE bit in the respective IECx
register.
c) Write the SPIxIP bits in the respective IPCx
register to set the interrupt priority.
2. Write the desired settings to the SPIxCON1 and
SPIxCON2 registers with the MSTEN bit
(SPIxCON1[5]) = 1.
3. Clear the SPIROV bit (SPIxSTAT[6]).
4. Enable SPI operation by setting the SPIEN bit
(SPIxSTAT[15]).
5. Write the data to be transmitted to the SPIxBUF
register. Transmission (and reception) will start
as soon as data are written to the SPIxBUF
register.
To set up the SPI module for the Standard Slave mode
of operation:
1. Clear the SPIxBUF register.
2. If using interrupts:
a) Clear the SPIxIF bit in the respective IFSx
register.
b) Set the SPIxIE bit in the respective IECx
register.
c) Write the SPIxIP bits in the respective IPCx
register to set the interrupt priority.
3. Write the desired settings to the SPIxCON1
and SPIxCON2 registers with the MSTEN bit
(SPIxCON1[5]) = 0.
4. Clear the SMP bit.
5. If the CKE bit is set, then the SSEN bit
(SPIxCON1[8]) must be set to enable the SSx
pin.
6. Clear the SPIROV bit (SPIxSTAT[6]).
7. Enable SPI operation by setting the SPIEN bit
(SPIxSTAT[15]).
FIGURE 15-1: SPIx MODULE BLOCK DIAGRAM (STANDARD MODE)
Internal Data Bus
SDIx
SDOx
SSx
/FSYNCx
SCKx
SPIxSR
bit 0
Shift Control
Edge
Select
F
CY
Primary
1:1/4/16/64
Enable
Prescaler
Sync
SPIxBUF
Control
TransferTransfer
Write SPIxBUFRead SPIxBUF
16
SPIxCON1[1:0]
SPIxCON1[4:2]
Master Clock
Secondary
Prescaler
1:1 to 1:8
Clock
Control