spi_lib.c

Go to the documentation of this file.
00001 
00016 /*_____ I N C L U D E S ____________________________________________________*/
00017 #include "config.h"
00018 //#include "lib_mem/spi\spi_lib.h"
00019 #include "lib_mcu/spi/spi_lib.h"
00020 
00021 
00022 /*_____ G L O B A L    D E F I N I T I O N _________________________________*/
00023 
00024 /*_____ D E F I N I T I O N ________________________________________________*/
00025 
00026 /*_____ M A C R O S ________________________________________________________*/
00027 
00028 bit spi_test_hit (void)
00029 {
00030 return Spi_rx_ready();
00031 }
00032 
00033 
00034 bit spi_init (spi_cf_t config)
00035 {
00036   Spi_init_bus();
00037   if(config == SPI_MASTER){Spi_select_master_mode();}
00038   else                    {Spi_select_slave_mode();}
00039 
00040   Spi_hw_init(SPI_CONFIG);
00041   Spi_set_doublespeed();/*to delete if wished*/
00042   Spi_enable();
00043 
00044 
00045   return TRUE;
00046 }
00047 
00048 
00049 char spi_putchar (char ch)
00050 {
00051 Spi_send_byte(ch);
00052 while(!Spi_tx_ready());
00053 return ch;
00054 }
00055 
00056 
00057 
00058 char spi_getchar (void)
00059 {
00060 
00061 register char c;
00062 
00063 while(!Spi_rx_ready());
00064 c = Spi_get_byte();
00065 return c;
00066 }
00067 
00068 void  SPI_Transmit_Master(char cData)
00069 {
00070   /* Wait for transmission complete */
00071 Spi_wait_eot();
00072   /* Start new transmission */
00073 Spi_send_byte(cData);
00074 
00075 }
00076 
00077 
00078 

Generated on Fri Jun 15 14:15:32 2007 for Atmel by  doxygen 1.5.1-p1