i'm trying to send 9 bits using spi1 hardware,it works on pic16f877a but not on pic18f4685
this function working good on pic16f877a
Code: Select all
void WriteSpiData( char Dat)
{
SSPCON= 0; //DISABLE SPI
PORTC.B5 = 1; //SEND THE 9TH BIT
PORTC.B3 = 1;
PORTC.B3 = 0;
SSPSTAT = 0b11000000;
SSPCON = 0b10100000; //ENABLE SPI
SSPBUF = (dat&0xFF);
}
this one aint working for pic18f4685
Code: Select all
void WriteSpiData(char Dat)
{
SSPCON1.SSPEN = 0;
LATC.B5 = 1; //SEND THE 9TH BIT
LATC.B3 = 1;
LATC.B3 = 0;
SSPSTAT = 0b11000000;
SSPCON1 = 0b10100010;
SSPBUF =(dat&0xFF);
}