X-Git-Url: https://codewiz.org/gitweb?a=blobdiff_plain;f=bertos%2Fcpu%2Favr%2Fdrv%2Fser_avr.h;h=4909613a9224b30575d7cde45a2fd5c4ad1029e1;hb=268d06bb58409df32c2ca35879347336fa13f167;hp=4fafafec6598f5778cd911552a6102b721fbe0f6;hpb=b90e284547eab472e3d9e478a058304bdd6b2da7;p=bertos.git diff --git a/bertos/cpu/avr/drv/ser_avr.h b/bertos/cpu/avr/drv/ser_avr.h index 4fafafec..4909613a 100644 --- a/bertos/cpu/avr/drv/ser_avr.h +++ b/bertos/cpu/avr/drv/ser_avr.h @@ -26,78 +26,28 @@ * invalidate any other reasons why the executable file might be covered by * the GNU General Public License. * - * Copyright 2007 Develer S.r.l. (http://www.develer.com/) + * Copyright 2007, 2010 Develer S.r.l. (http://www.develer.com/) * * --> * - * \version $Id$ * - * \author Daniele Basile + * \author Onno * * \brief Low-level serial module for AVR (interface). * */ +#ifndef SER_AVR_H_ +#define SER_AVR_H_ -#ifndef DRV_SER_AVR_H -#define DRV_SER_AVR_H +#include -#include /* BV() */ -#include /* uint32_t */ - -typedef uint8_t serstatus_t; - -/* Software errors */ -#define SERRF_RXFIFOOVERRUN BV(0) /**< Rx FIFO buffer overrun */ -#define SERRF_RXTIMEOUT BV(5) /**< Receive timeout */ -#define SERRF_TXTIMEOUT BV(6) /**< Transmit timeout */ - -/* -* Hardware errors. -* These flags map directly to the AVR UART Status Register (USR). -*/ -#define SERRF_RXSROVERRUN BV(3) /**< Rx shift register overrun */ -#define SERRF_FRAMEERROR BV(4) /**< Stop bit missing */ -#define SERRF_PARITYERROR BV(7) /**< Parity error */ -#define SERRF_NOISEERROR 0 /**< Unsupported */ - - -/** - * SPI clock polarity. - * - * $WIZ$ ser_spi_pol = "SPI_NORMAL_LOW", "SPI_NORMAL_HIGH" - * } - */ -#define SPI_NORMAL_LOW 0 -#define SPI_NORMAL_HIGH 1 - -/** - * SPI clock phase. - * - * $WIZ$ ser_spi_phase = "SPI_SAMPLE_ON_FIRST_EDGE", "SPI_SAMPLE_ON_SECOND_EDGE" - * } - */ -#define SPI_SAMPLE_ON_FIRST_EDGE 0 -#define SPI_SAMPLE_ON_SECOND_EDGE 1 - -/** - * \name Serial hw numbers - * - * \{ - */ -enum -{ -#if CPU_AVR_ATMEGA64 || CPU_AVR_ATMEGA128 || CPU_AVR_ATMEGA1281 - SER_UART0, - SER_UART1, - SER_SPI, -#elif CPU_AVR_ATMEGA103 || CPU_AVR_ATMEGA8 - SER_UART0, - SER_SPI, +#if CPU_AVR_MEGA + #include "ser_mega.h" +#elif CPU_AVR_XMEGA + #include "ser_xmega.h" +/*#elif Add other AVR families here */ #else - #error unknown architecture + #error Unknown CPU #endif - SER_CNT /**< Number of serial ports */ -}; -/*\}*/ -#endif /* DRV_SER_AVR_H */ +#endif /* SER_AVR_H_ */