USART Devices
[Serial]

Collaboration diagram for USART Devices:


Detailed Description

AVR USART hardware dependant implementation.

A pointer to devUsartAvr0 or devUsartAvr1 must be passed to NutRegisterDevice() to bind the corresponding device driver to the Nut/OS kernel.

 NutRegisterDevice(&devUsartAvr0, 0, 0);
 fp = fopen("uart0", "r+");
 fprintf(fp, "Hello world!\n");

The AVR USART devices make use of the hardware independant USART Device Driver


UART0 CTS Handshake Sense

UART0_CTS_IRQ must be defined in arch/avr.h

#define UART_CTS_PORT
#define UART_CTS_PIN
#define UART_CTS_DDR
#define UART_CTS_SIGNAL
#define UART_CTS_BIT

UART0 RTS Handshake Control

UART0_RTS_BIT must be defined in arch/avr.h

#define UART_RTS_BIT

AVR USART0 Device

NUTDEVICE devUsartAvr0
 USART0 device information structure.

Defines

#define UDRn
#define UCSRnA
#define UCSRnB
#define UBRRnL
#define UCSZ2
#define sig_UART_RECV
#define sig_UART_DATA
#define sig_UART_TRANS
#define SIG_UART_RECV
#define SIG_UART_DATA
#define SIG_UART_TRANS
#define dcb_usart
#define ASCII_XON
#define ASCII_XOFF
#define XON_PENDING
#define XOFF_PENDING
#define XOFF_SENT
#define XOFF_RCVD


Variable Documentation

NUTDEVICE devUsartAvr0
 

Initial value:

 {
    0,                          
    {'u', 'a', 'r', 't', '0', 0, 0, 0, 0},    
    IFTYP_CHAR,                 
    0,                          
    0,                          
    0,                          
    &dcb_usart0,                
    UsartInit,                  
    UsartIOCtl,                 
    UsartRead,                  
    UsartWrite,                 
    UsartWrite_P,               
    UsartOpen,                  
    UsartClose,                 
    UsartSize                   
}
USART0 device information structure.

An application must pass a pointer to this structure to NutRegisterDevice() before using the serial communication driver of the AVR's on-chip USART0.

The device is named uart0.


© 2000-2006 by egnite Software GmbH - visit http://www.ethernut.de/