PIC18F13K50-E/P MICROCHIP [Microchip Technology], PIC18F13K50-E/P Datasheet - Page 140
![no-image](/images/no-image-200.jpg)
PIC18F13K50-E/P
Manufacturer Part Number
PIC18F13K50-E/P
Description
Manufacturer
MICROCHIP [Microchip Technology]
Datasheet
1.PIC18F13K50-EP.pdf
(414 pages)
- Current page: 140 of 414
- Download datasheet (7Mb)
PIC18F1XK50/PIC18LF1XK50
15.2.2
When initializing the SPI, several options need to be
specified. This is done by programming the appropriate
control bits (SSPCON1<5:0> and SSPSTAT<7:6>).
These control bits allow the following to be specified:
• Master mode (SCK is the clock output)
• Slave mode (SCK is the clock input)
• Clock Polarity (Idle state of SCK)
• Data Input Sample Phase (middle or end of data
• Clock Edge (output data on rising/falling edge of
• Clock Rate (Master mode only)
• Slave Select mode (Slave mode only)
The MSSP consists of a transmit/receive shift register
(SSPSR) and a buffer register (SSPBUF). The SSPSR
shifts the data in and out of the device, MSb first. The
SSPBUF holds the data that was written to the SSPSR
until the received data is ready. Once the 8 bits of data
have been received, that byte is moved to the SSPBUF
register. Then, the Buffer Full detect bit, BF of the
SSPSTAT register, and the interrupt flag bit, SSPIF, are
set. This double-buffering of the received data
(SSPBUF) allows the next byte to start reception before
reading the data that was just received. Any write to the
SSPBUF register during transmission/reception of data
will be ignored and the write collision detect bit WCOL
of the SSPCON1 register, will be set. User software
must clear the WCOL bit to allow the following write(s)
to the SSPBUF register to complete successfully.
EXAMPLE 15-1:
DS41350C-page 138
LOOP
output time)
SCK)
BTFSS
BRA
MOVF
MOVWF
MOVF
MOVWF
OPERATION
SSPSTAT, BF
LOOP
SSPBUF, W
RXDATA
TXDATA, W
SSPBUF
LOADING THE SSPBUF (SSPSR) REGISTER
;Has data been received (transmit complete)?
;No
;WREG reg = contents of SSPBUF
;Save in user RAM, if data is meaningful
;W reg = contents of TXDATA
;New data to xmit
Preliminary
When the application software is expecting to receive
valid data, the SSPBUF should be read before the next
byte of data to transfer is written to the SSPBUF. The
Buffer Full bit, BF of the SSPSTAT register, indicates
when SSPBUF has been loaded with the received data
(transmission is complete). When the SSPBUF is read,
the BF bit is cleared. This data may be irrelevant if the
SPI is only a transmitter. Generally, the MSSP interrupt
is used to determine when the transmission/reception
has completed. If the interrupt method is not going to
be used, then software polling can be done to ensure
that a write collision does not occur. Example 15-1
shows the loading of the SSPBUF (SSPSR) for data
transmission.
The SSPSR is not directly readable or writable and can
only be accessed by addressing the SSPBUF register.
Additionally, the MSSP STATUS register (SSPSTAT)
indicates the various status conditions.
© 2009 Microchip Technology Inc.
Related parts for PIC18F13K50-E/P
Image
Part Number
Description
Manufacturer
Datasheet
Request
R
![PIC18F-LF1XK50](/images/no-image3.png)
Part Number:
Description:
20-Pin USB Flash Microcontrollers
Manufacturer:
MICROCHIP [Microchip Technology]
Datasheet:
![PIC18F6393T-I/PT](/photos/6/81/68123/c04-066_pf_tmb.jpg)
Part Number:
Description:
PIC18F With 128-segment LCD Driver And 12-bit ADC, 8KB Flash, 768B RAM, CCP, MSS
Manufacturer:
Microchip Technology
Datasheet:
![PIC18F6493T-I/PT](/photos/6/81/68123/c04-066_pf_tmb.jpg)
Part Number:
Description:
PIC18F With 128-segment LCD Driver And 12-bit ADC, 16KB Flash, 768B RAM, CCP, MS
Manufacturer:
Microchip Technology
Datasheet:
![PIC18F8393T-I/PT](/images/manufacturer_photos/0/4/439/microchip_technology_tmb.jpg)
Part Number:
Description:
PIC18F With 192-segment LCD Driver And 12-bit ADC, 8KB Flash, 768B RAM, CCP, MSS
Manufacturer:
Microchip Technology
Datasheet:
![PIC18F8493T-I/PT](/images/manufacturer_photos/0/4/439/microchip_technology_tmb.jpg)
Part Number:
Description:
PIC18F With 192-segment LCD Driver And 12-bit ADC, 16KB Flash, 768B RAM, CCP, MS
Manufacturer:
Microchip Technology
Datasheet:
![PIC18F6585-I/L](/photos/16/12/161282/68-plcc-large-300dpi-lyrd_tmb.jpg)
Part Number:
Description:
Microcontrollers (MCU) 48KB 3328 RAM 52 I/O
Manufacturer:
Microchip Technology
Datasheet:
![PIC18F6680-I/L](/photos/16/12/161282/68-plcc-large-300dpi-lyrd_tmb.jpg)
Part Number:
Description:
Microcontrollers (MCU) 64KB 3328 RAM 52 I/O
Manufacturer:
Microchip Technology
Datasheet:
![PIC18F65K90T-I/MR](/photos/16/3/160368/qfn64_tmb.jpg)
Part Number:
Description:
32kB Flash, 2kB RAM, 1kB EE, NanoWatt XLP, LCD 64 QFN 9x9x0.9mm T/R
Manufacturer:
Microchip Technology
Datasheet:
![PIC18F65K90T-I/PT](/photos/16/3/160367/tqfp-64_tmb.jpg)
Part Number:
Description:
32kB Flash, 2kB RAM, 1kB EE, NanoWatt XLP, LCD 64 TQFP 10x10x1mm T/R
Manufacturer:
Microchip Technology
Datasheet:
![PIC18F87K90T-I/PT](/photos/40/31/403173/tqfp-80_tmb.jpg)
Part Number:
Description:
128kB Flash, 4kB RAM, 1kB EE, 16MIPS, NanoWatt XLP, LCD, 5V 80 TQFP 12x12x1mm T/
Manufacturer:
Microchip Technology
Datasheet:
![PIC18F65K90-I/MR](/photos/16/3/160368/qfn64_tmb.jpg)
Part Number:
Description:
32kB Flash, 2kB RAM, 1kB EE, NanoWatt XLP, LCD 64 QFN 9x9x0.9mm TUBE
Manufacturer:
Microchip Technology
Datasheet:
![PIC18F65K90-I/PT](/photos/16/3/160367/tqfp-64_tmb.jpg)
Part Number:
Description:
32kB Flash, 2kB RAM, 1kB EE, NanoWatt XLP, LCD 64 TQFP 10x10x1mm TRAY
Manufacturer:
Microchip Technology
![PIC18F87K90-I/PT](/photos/40/31/403173/tqfp-80_tmb.jpg)
Part Number:
Description:
128kB Flash, 4kB RAM, 1kB EE, 16MIPS, NanoWatt XLP, LCD, 5V 80 TQFP 12x12x1mm TR
Manufacturer:
Microchip Technology