Project

General

Profile

Revision 731

Added by Ben Poole almost 16 years ago

code commented and cleaned up. should work but untested.

View differences:

spi.h
1
/**
2
 * @file spi.h
3
 * @brief Definitions for SPI
4
 * @author Colony Project, CMU Robotics Club
5
 **/
6

  
1 7
#ifndef __SPI_H__
2 8
#define __SPI_H__
3 9

  
4 10
#define DOUBLE_SCK 1
5 11
#define SPR0_BIT 1
6
#define LSB 1
7
#define MSB 0
12

  
8 13
#define MASTER 1
9 14
#define SLAVE 0
10
#define SPI_SENDING 1
11
#define SPI_VOID 0
12
#define SPI_MASTER_RECV 2
13 15

  
14
/* Pin Defines */
15 16
#define MOSI _BV(PB2)
16 17
#define MISO _BV(PB3)
17
#define SS _BV(PB0)
18
#define SS   _BV(PB0)
18 19
#define SCLK _BV(PB1)
19 20

  
20
#define size_t int
21
typedef void (*spi_fun_recv_t)(unsigned char);
22
typedef void (*spi_fun_send_t)(unsigned char);
23
void spi_init(spi_fun_recv_t recv_func);
24
int spi_send(char *data, size_t bytes);
25
void spi_master_recv_on(void);
26
void spi_master_recv_off(void);
27
void spi_transfer(char c);
21
typedef void (*spi_fun_recv_t)(char);
28 22

  
23
void spi_init (spi_fun_recv_t);
24
void spi_transfer (char);
25

  
29 26
#endif

Also available in: Unified diff