Bu mini PIC bayağı hoşuma gitti.Bir SPI çalıştırayım dedim.OLED denedim çalışıyor. SPI ayarları ve veri gönderme lazım olur diye düşündüm.
Not : MISO yu daha tam olarak çözemedim bitince buraya eklerim.
#define SPI_MOSI PORTAbits.RA0
#define SPI_MISO PORTAbits.RA2
#define SPI_SCLK PORTAbits.RA1
//#define SPI_CS PORTAbits.RA4
#define TRIS_MOSI TRISAbits.TRISA0
#define TRIS_MISO TRISAbits.TRISA2
#define TRIS_SCLK TRISAbits.TRISA1
//#define TRIS_CS TRISAbits.TRISA4
void SPI_Init(void)
{
SSP1STAT = 0b00000000;
SSP1STATbits.CKE = 1;
SSP1CON1 = 0b00000000;
SSP1CON1bits.CKP = 0;
SSP1CON3 = 0;
SSP1ADD = 0;
TRIS_MOSI=0;
TRIS_MISO=1;
TRIS_SCLK=0;
//TRIS_CS = 0;
SSP1CON1bits.SSPEN = 1;
}
void SPI_SendData(char data)
{
//SPI_CS = 0;
SSP1BUF = data;
while( !SSP1STATbits.BF );
SSP1STATbits.BF = 0;
//SPI_CS = 1;
}