ethspi.h

Go to the documentation of this file.
00001 /***************************************************************************/
00017 #ifndef __ETHERNET_SPI_H
00018 #define __ETHERNET_SPI_H
00019 #include <stdint.h>
00020 
00021 /**************************************************************************/
00025 /**************************************************************************/
00032 #ifdef __cplusplus
00033 extern "C" {
00034 #endif
00035 
00036 #define BAUDRATE_100K        100000             
00037 #define ETH_USART_USED       USART1             
00038 #define ETH_USART_CLK        cmuClock_USART1    
00039 #define BOGUS_BYTE           0xFF               
00040 #define REG_MASK             0x03               
00041 #define OPCODE_REG_READ      0x00               
00042 #define OPCODE_REG_WRITE     0x40               
00043 #define OPCODE_FIFO_READ     0x80               
00044 #define OPCODE_FIFO_WRITE    0xC0               
00045 #define SHIFT_VAL            0x02               
00046 #define ADDRESS_MS2B_MASK    0xC0               
00047 #define ADDRESS_MS2B_POS     0x06               
00049 /* GPIO pins used for SPI communication. */
00050 /*(USART 1, Location #1) */
00051 #define SPI_MOSI_PIN     0                      
00052 #define SPI_MOSI_PORT    gpioPortD              
00053 #define SPI_MISO_PIN     1                      
00054 #define SPI_MISO_PORT    gpioPortD              
00055 #define SPI_CLK_PIN      2                      
00056 #define SPI_CLK_PORT     gpioPortD              
00057 #define SPI_CS_PIN       3                      
00058 #define SPI_CS_PORT      gpioPortD              
00062 void ETHSPI_Init(void);
00063 void ETHSPI_ReadRegister(uint8_t reg, int numBytes, void *data);
00064 void ETHSPI_WriteRegister(uint8_t reg, int numBytes, void *data);
00065 void ETHSPI_StartWriteFIFO(void);
00066 void ETHSPI_StartReadFIFO(void);
00067 void ETHSPI_StopFIFO(void);
00068 void ETHSPI_ReadFifoContinue(int numBytes, uint8_t *data);
00069 void ETHSPI_WriteFifoContinue(int numBytes, uint8_t *data);
00070 
00071 #ifdef __cplusplus
00072 }
00073 #endif
00074 
00078 #endif