ethspi.h

Go to the documentation of this file.
00001 /***************************************************************************/
00035 #ifndef __ETHERNET_SPI_H
00036 #define __ETHERNET_SPI_H
00037 #include <stdint.h>
00038 
00039 /**************************************************************************/
00043 /**************************************************************************/
00050 #ifdef __cplusplus
00051 extern "C" {
00052 #endif
00053 
00054 #define BAUDRATE_100K        100000             
00055 #define ETH_USART_USED       USART1             
00056 #define ETH_USART_CLK        cmuClock_USART1    
00057 #define BOGUS_BYTE           0xFF               
00058 #define REG_MASK             0x03               
00059 #define OPCODE_REG_READ      0x00               
00060 #define OPCODE_REG_WRITE     0x40               
00061 #define OPCODE_FIFO_READ     0x80               
00062 #define OPCODE_FIFO_WRITE    0xC0               
00063 #define SHIFT_VAL            0x02               
00064 #define ADDRESS_MS2B_MASK    0xC0               
00065 #define ADDRESS_MS2B_POS     0x06               
00067 /* GPIO pins used for SPI communication. */
00068 /*(USART 1, Location #1) */
00069 #define SPI_MOSI_PIN     0                      
00070 #define SPI_MOSI_PORT    gpioPortD              
00071 #define SPI_MISO_PIN     1                      
00072 #define SPI_MISO_PORT    gpioPortD              
00073 #define SPI_CLK_PIN      2                      
00074 #define SPI_CLK_PORT     gpioPortD              
00075 #define SPI_CS_PIN       3                      
00076 #define SPI_CS_PORT      gpioPortD              
00080 void ETHSPI_Init(void);
00081 void ETHSPI_ReadRegister(uint8_t reg, int numBytes, void *data);
00082 void ETHSPI_WriteRegister(uint8_t reg, int numBytes, void *data);
00083 void ETHSPI_StartWriteFIFO(void);
00084 void ETHSPI_StartReadFIFO(void);
00085 void ETHSPI_StopFIFO(void);
00086 void ETHSPI_ReadFifoContinue(int numBytes, uint8_t *data);
00087 void ETHSPI_WriteFifoContinue(int numBytes, uint8_t *data);
00088 
00089 #ifdef __cplusplus
00090 }
00091 #endif
00092 
00096 #endif