PIC18CXX2
DS39026C-page 122
2001 Microchip Technology Inc.
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. Buffer
full bit, BF (SSPSTAT<0>), 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 com-
pleted. The SSPBUF must be read and/or written. 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 14-1 shows the loading of the
SSPBUF (SSPSR) for data transmission.
EXAMPLE 14-1:
LOADING THE SSPBUF (SSPSR) REGISTER
The SSPSR is not directly readable or writable, and
can only be accessed by addressing the SSPBUF reg-
ister. Additionally, the MSSP status register (SSPSTAT)
indicates the various status conditions.
14.3.2
ENABLING SPI I/O
To enable the serial port, SSP enable bit, SSPEN
(SSPCON1<5>), must be set. To reset or reconfigure
SPI mode, clear the SSPEN bit, re-initialize the
SSPCON registers, and then set the SSPEN bit. This
configures the SDI, SDO, SCK, and SS pins as serial
port pins. For the pins to behave as the serial port func-
tion, some must have their data direction bits (in the
TRIS register) appropriately programmed. That is:
SDI is automatically controlled by the SPI module
SDO must have TRISC<5> bit cleared
SCK (Master mode) must have TRISC<3> bit cleared
SCK (Slave mode) must have TRISC<3> bit set
SS must have TRISC<4> bit set
Any serial port function that is not desired may be over-
ridden by programming the corresponding data direc-
tion (TRIS) register to the opposite value.
LOOP BTFSS SSPSTAT, BF
;Has data been received(transmit complete)?
GOTO
LOOP
;No
MOVF
SSPBUF, W
;WREG reg = contents of SSPBUF
MOVWF RXDATA
;Save in user RAM, if data is meaningful
MOVF
TXDATA, W
;W reg = contents of TXDATA
MOVWF SSPBUF
;New data to xmit
相关PDF资料
PIC16C54C-40/SS IC MCU OTP 512X12 20SSOP
22-15-3033 CONN FFC/FPC 3POS .100 RT ANG
PIC18LC858T-I/PT IC MCU OTP 16KX16 CAN 80TQFP
22-02-3033 CONN FFC/FPC VERTICAL 3POS .100
PIC18C858T-E/PT IC MCU OTP 16KX16 CAN 80TQFP
PIC18C858T-I/PT IC MCU OTP 16KX16 CAN 80TQFP
PIC18C658T-I/PT IC MCU OTP 16KX16 CAN 64TQFP
PIC16LC717T-E/SS IC MCU OTP 2KX14 A/D PWM 20SSOP
相关代理商/技术参数
PIC18C452T-E/PT 功能描述:8位微控制器 -MCU 32KB 1536 RAM 34I/O RoHS:否 制造商:Silicon Labs 核心:8051 处理器系列:C8051F39x 数据总线宽度:8 bit 最大时钟频率:50 MHz 程序存储器大小:16 KB 数据 RAM 大小:1 KB 片上 ADC:Yes 工作电源电压:1.8 V to 3.6 V 工作温度范围:- 40 C to + 105 C 封装 / 箱体:QFN-20 安装风格:SMD/SMT
PIC18C452T-I/L 功能描述:8位微控制器 -MCU 32KB 1536 RAM 34I/O RoHS:否 制造商:Silicon Labs 核心:8051 处理器系列:C8051F39x 数据总线宽度:8 bit 最大时钟频率:50 MHz 程序存储器大小:16 KB 数据 RAM 大小:1 KB 片上 ADC:Yes 工作电源电压:1.8 V to 3.6 V 工作温度范围:- 40 C to + 105 C 封装 / 箱体:QFN-20 安装风格:SMD/SMT
PIC18C452T-I/PT 功能描述:8位微控制器 -MCU 32KB 1536 RAM 34I/O RoHS:否 制造商:Silicon Labs 核心:8051 处理器系列:C8051F39x 数据总线宽度:8 bit 最大时钟频率:50 MHz 程序存储器大小:16 KB 数据 RAM 大小:1 KB 片上 ADC:Yes 工作电源电压:1.8 V to 3.6 V 工作温度范围:- 40 C to + 105 C 封装 / 箱体:QFN-20 安装风格:SMD/SMT
PIC18C601-I/L 功能描述:8位微控制器 -MCU 256KB 1536 RAM 26I/O RoHS:否 制造商:Silicon Labs 核心:8051 处理器系列:C8051F39x 数据总线宽度:8 bit 最大时钟频率:50 MHz 程序存储器大小:16 KB 数据 RAM 大小:1 KB 片上 ADC:Yes 工作电源电压:1.8 V to 3.6 V 工作温度范围:- 40 C to + 105 C 封装 / 箱体:QFN-20 安装风格:SMD/SMT
PIC18C601-I/L021 制造商:Microchip Technology Inc 功能描述:
PIC18C601-I/PT 功能描述:8位微控制器 -MCU 256KB 1536 RAM 26I/O RoHS:否 制造商:Silicon Labs 核心:8051 处理器系列:C8051F39x 数据总线宽度:8 bit 最大时钟频率:50 MHz 程序存储器大小:16 KB 数据 RAM 大小:1 KB 片上 ADC:Yes 工作电源电压:1.8 V to 3.6 V 工作温度范围:- 40 C to + 105 C 封装 / 箱体:QFN-20 安装风格:SMD/SMT
PIC18C601T-I/L 功能描述:8位微控制器 -MCU 256KB 1536 RAM 26I/O RoHS:否 制造商:Silicon Labs 核心:8051 处理器系列:C8051F39x 数据总线宽度:8 bit 最大时钟频率:50 MHz 程序存储器大小:16 KB 数据 RAM 大小:1 KB 片上 ADC:Yes 工作电源电压:1.8 V to 3.6 V 工作温度范围:- 40 C to + 105 C 封装 / 箱体:QFN-20 安装风格:SMD/SMT
PIC18C601T-I/PT 功能描述:8位微控制器 -MCU 256KB 1536 RAM 26I/O RoHS:否 制造商:Silicon Labs 核心:8051 处理器系列:C8051F39x 数据总线宽度:8 bit 最大时钟频率:50 MHz 程序存储器大小:16 KB 数据 RAM 大小:1 KB 片上 ADC:Yes 工作电源电压:1.8 V to 3.6 V 工作温度范围:- 40 C to + 105 C 封装 / 箱体:QFN-20 安装风格:SMD/SMT