I'm using a PIC 16F876's SSP module to realize SPI communication. I use the following code to initialize all the registers (I think) ; Initialize SPI registers SPI Initial bcf TRISC, 5 ; Enable SDO bcf TRISC, 3 ; SCK in Master mode bsf SSPCON, SSPEN ; enable synchronous serial port bsf SSPCON, CKP ; SCK will idle high bcf SSPCON, SSPM3 ; last 4 bits of SSPCON clear for SPI master mode with SCK = Fosc / 4 bcf SSPCON, SSPM2 bcf SSPCON, SSPM1 bcf SSPCON, SSPM0 bcf SSPCON, WCOL bcf SSPCON, SSPOV bsf SSPSTAT, SMP ; input data sampled at end of output line bsf SSPSTST, CKE ; CPK = 1 and data transmitted on falling edge of SCK retrun Now to perform a write to the SPI bus is all I have to do is this? (where txdata is the 8 bit word I want to write) bcf status, rp0 ; specify Bank0 movf txdata, w ; w reg holds contents of txdata movwf sspbuf ; new data to xmit I know it can't be that simple