proconX: Protocol Converter & Gateways

Programmable Gateways

Smart Industrial Communication and Embeddeded Ethernet Solutions
 Login 
We accept VISA, MasterCard, PayPal

World Wide Shipping

AVR USART Devices
[USART Device Driver]

Collaboration diagram for AVR 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("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

UART1 CTS Handshake Sense

UART1_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

AVR USART0 Device

NUTDEVICE devUsartAvr0
 USART0 device information structure.

AVR USART1 Device

NUTDEVICE devUsartAvr1
 USART1 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 dcb_usart


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.

NUTDEVICE devUsartAvr1
 

Initial value:

 {
    0,                          
    {'u', 'a', 'r', 't', '1', 0, 0, 0, 0},    
    IFTYP_CHAR,                 
    1,                          
    0,                          
    0,                          
    &dcb_usart1,                
    UsartInit,                  
    UsartIOCtl,                 
    UsartRead,                  
    UsartWrite,                 
    UsartWrite_P,               
    UsartOpen,                  
    UsartClose,                 
    UsartSize                   
}
USART1 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 USART1.

The device is named uart1.