00001 /*This file has been prepared for Doxygen automatic documentation generation.*/ 00013 00014 /* Copyright (c) 2007, Atmel Corporation All rights reserved. 00015 * 00016 * Redistribution and use in source and binary forms, with or without 00017 * modification, are permitted provided that the following conditions are met: 00018 * 00019 * 1. Redistributions of source code must retain the above copyright notice, 00020 * this list of conditions and the following disclaimer. 00021 * 00022 * 2. Redistributions in binary form must reproduce the above copyright notice, 00023 * this list of conditions and the following disclaimer in the documentation 00024 * and/or other materials provided with the distribution. 00025 * 00026 * 3. The name of ATMEL may not be used to endorse or promote products derived 00027 * from this software without specific prior written permission. 00028 * 00029 * THIS SOFTWARE IS PROVIDED BY ATMEL ``AS IS'' AND ANY EXPRESS OR IMPLIED 00030 * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF 00031 * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE EXPRESSLY AND 00032 * SPECIFICALLY DISCLAIMED. IN NO EVENT SHALL ATMEL BE LIABLE FOR ANY DIRECT, 00033 * INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES 00034 * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; 00035 * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND 00036 * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 00037 * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF 00038 * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 00039 */ 00040 00041 #ifndef _SPI_LIB_H_ 00042 #define _SPI_LIB_H_ 00043 00044 /*_____ I N C L U D E - F I L E S ____________________________________________*/ 00045 #include "lib_mcu/spi/spi_drv.h" 00046 00047 /*_____ C O N F I G U R A T I O N _________________________________________*/ 00048 00049 /*_____ D E F I N I T I O N S ______________________________________________*/ 00050 00051 00052 //#ifndef SPI_CONFIG 00053 //#error You must enter SPI_CONFIG in config.h 00054 //#define SPI_CONFIG 00055 //#endif 00056 00060 typedef enum {SPI_MASTER, SPI_SLAVE} spi_cf_t; 00061 00062 /*_____ D E C L A R A T I O N ______________________________________________*/ 00063 00064 /*_____ M A C R O S ________________________________________________________*/ 00065 00066 /*_____ P R O T O T Y P E S ____________________________________________________________*/ 00067 00084 bit spi_init (spi_cf_t config); 00085 00094 char spi_putchar (char uc_wr_byte); 00095 00102 bit spi_test_hit (void); 00103 00110 char spi_getchar (void); 00111 00112 //*************************************************************************** 00113 // @fn SPI_Transmit_Master 00123 //*************************************************************************** 00124 void SPI_Transmit_Master(char cData); 00125 00126 //*************************************************************************** 00127 // @fn spi_rw 00133 //*************************************************************************** 00134 char spi_rw(char tx); 00135 00136 #endif /* _SPI_LIB_H_ */