blob: 69bdec62fe66109b39469b44b4ade6aeb0d40d3a (
plain) (
blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
|
#include <xc.h>
#include <stdint.h>
#include "system.h"
#include "types.h"
#include "spi.h"
void
spiInit(void) {
U8 junk;
TRISB4 = IN; // SDI
TRISC7 = OUT; // SDO
TRISB6 = OUT; // SCK
SSPSTAT = 0x40; // CKE=1
SSPCON1 = 0x22; // FOSC/64 => 750kHz SPI clock
junk = SSPBUF; // dummy read to clear BF
(void)junk;
}
U8
spiTx(U8 c) {
SSPBUF = c;
while (!SSPSTATbits.BF) {}
return SSPBUF;
}
|