欢迎访问ic37.com |
会员登录 免费注册
发布采购

PIC18F4520-I/PT 参数 Datasheet PDF下载

PIC18F4520-I/PT图片预览
型号: PIC18F4520-I/PT
PDF下载: 下载PDF文件 查看货源
内容描述: 28 /40/ 44引脚增强型闪存微控制器与10位A / D和纳瓦技术 [28/40/44-Pin Enhanced Flash Microcontrollers with 10-Bit A/D and nanoWatt Technology]
分类和应用: 闪存微控制器
文件页数/大小: 412 页 / 6898 K
品牌: MICROCHIP [ MICROCHIP ]
 浏览型号PIC18F4520-I/PT的Datasheet PDF文件第162页浏览型号PIC18F4520-I/PT的Datasheet PDF文件第163页浏览型号PIC18F4520-I/PT的Datasheet PDF文件第164页浏览型号PIC18F4520-I/PT的Datasheet PDF文件第165页浏览型号PIC18F4520-I/PT的Datasheet PDF文件第167页浏览型号PIC18F4520-I/PT的Datasheet PDF文件第168页浏览型号PIC18F4520-I/PT的Datasheet PDF文件第169页浏览型号PIC18F4520-I/PT的Datasheet PDF文件第170页  
PIC18F2420/2520/4420/4520  
will be ignored and the write collision detect bit, WCOL  
(SSPCON1<7>), will be set. User software must clear  
the WCOL bit so that it can be determined if the follow-  
ing write(s) to the SSPBUF register completed  
successfully.  
17.3.2  
OPERATION  
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:  
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 (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 completed. 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 17-1 shows the  
loading of the SSPBUF (SSPSR) for data transmission.  
• 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  
output time)  
• Clock Edge (output data on rising/falling edge of  
SCK)  
• 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  
(SSPSTAT<0>) 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  
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.  
Note:  
The SSPBUF register cannot be used with  
read-modify-write instructions such as  
BCF, BTFSC and COMF, etc.  
EXAMPLE 17-1:  
LOADING THE SSPBUF (SSPSR) REGISTER  
LOOP  
BTFSS  
BRA  
SSPSTAT, BF  
LOOP  
;Has data been received (transmit complete)?  
;No  
MOVF  
SSPBUF, W  
;WREG reg = contents of SSPBUF  
MOVWF  
RXDATA  
;Save in user RAM, if data is meaningful  
MOVF  
MOVWF  
TXDATA, W  
SSPBUF  
;W reg = contents of TXDATA  
;New data to xmit  
Note:  
To avoid lost data in Master mode, a read  
of the SSPBUF must be performed to clear  
the Buffer Full (BF) detect bit  
(SSPSTAT<0>)  
transmission.  
between  
each  
DS39631E-page 164  
© 2008 Microchip Technology Inc.  
 复制成功!