Main Page | Modules | Data Structures | Directories | File List | Data Fields | Globals | Related Pages

uartswconf.h

Go to the documentation of this file.
00001 /*! \file uartswconf.h \brief Interrupt-driven Software UART Driver Configuration. */
00002 //*****************************************************************************
00003 //
00004 // File Name    : 'uartswconf.h'
00005 // Title        : Interrupt-driven Software UART Driver Configuration
00006 // Author       : Pascal Stang - Copyright (C) 2002-2004
00007 // Created      : 7/20/2002
00008 // Revised      : 4/27/2004
00009 // Version      : 0.1
00010 // Target MCU   : Atmel AVR Series (intended for the ATmega16 and ATmega32)
00011 // Editor Tabs  : 4
00012 //
00013 // Description  :
00014 //      This uart library emulates the operation of a UART (serial port) using
00015 //  the AVR's hardware timers, I/O pins, and some software.
00016 //
00017 //  Specifically, this code uses:
00018 //      -Timer 1 Output Compare A for transmit timing
00019 //      -Timer 1 Output Compare B for receive timing
00020 //      -Timer 1 Input Capture for receive triggering
00021 //
00022 //  The above resources cannot be used for other purposes while this software
00023 //  UART is enabled.  The overflow interrupt from Timer1 can still be used for
00024 //  other timing, but the prescaler for Timer1 must not be changed.
00025 //
00026 //  Serial output from this UART can be routed to any I/O pin.  Serial input
00027 //  for this UART must come from the Timer1 Input Capture (IC1) I/O pin.
00028 //  These options should be configured by editing your local copy of
00029 //  "uartswconf.h".
00030 //
00031 // This code is distributed under the GNU Public License
00032 //      which can be found at http://www.gnu.org/licenses/gpl.txt
00033 //
00034 //*****************************************************************************
00035 
00036 #ifndef UARTSWCONF_H
00037 #define UARTSWCONF_H
00038 
00039 // constants/macros/typdefs
00040 
00041 #define UARTSW_RX_BUFFER_SIZE   0x20    ///< UART receive buffer size in bytes
00042 
00043 #define UARTSW_INVERT                   ///< define to invert polarity of RX/TX signals
00044 // when non-inverted, the serial line is appropriate for passing though
00045 // an RS232 driver like the MAX232.  When inverted, the serial line can
00046 // directly drive/receive RS232 signals to/from a DB9 connector.  Be sure
00047 // to use a current-limiting resistor and perhaps a diode-clamp circuit when
00048 // connecting incoming RS232 signals to a microprocessor I/O pin.
00049 
00050 // if non-inverted, the serial line idles high (logic 1) between bytes
00051 // if inverted, the serial line idles low (logic 0) between bytes
00052 
00053 
00054 // UART transmit pin defines
00055 #define UARTSW_TX_PORT          PORTD   ///< UART Transmit Port
00056 #define UARTSW_TX_DDR           DDRD    ///< UART Transmit DDR
00057 #define UARTSW_TX_PIN           PD5     ///< UART Transmit Pin
00058 
00059 // UART receive pin defines
00060 // This pin must correspond to the
00061 // Timer1 Input Capture (ICP or IC1) pin for your processor
00062 #define UARTSW_RX_PORT          PORTD   ///< UART Receive Port
00063 #define UARTSW_RX_DDR           DDRD    ///< UART Receive DDR
00064 #define UARTSW_RX_PORTIN        PIND    ///< UART Receive Port Input
00065 #define UARTSW_RX_PIN           PD6     ///< UART Receive Pin
00066 
00067 #endif

Generated on Sun Oct 29 03:41:06 2006 for Procyon AVRlib by  doxygen 1.4.2