File nut/include/dev/usart.h


Included Files


Preprocessor definitions

#define _DEV_USART_H_

#define USART_RXBUFSIZ 256

#define USART_RXHIWMARK 240

#define USART_RXLOWMARK 208

#define USART_TXBUFSIZ 64

#define USART_TXHIWMARK 56

#define USART_TXLOWMARK 40

#define USART_INITSPEED 115200

#define USART_MF_RTSCONTROL 0x0001

#define USART_MF_CTSSENSE 0x0002

#define USART_MF_DTRCONTROL 0x0004

#define USART_MF_DSRSENSE 0x0008

#define USART_MF_DCDSENSE 0x0010

#define USART_MF_SENSEMASK 0x001A

#define USART_MF_CONTROLMASK 0x0005

#define USART_MF_XONXOFF 0x0020

#define USART_MF_LOCALECHO 0x0040

#define USART_MF_COOKEDMODE 0x0080

#define USART_MF_NOBUFFER 0x0100

#define USART_MF_LINEBUFFER 0x0200

#define USART_MF_BUFFERMASK 0x0300

#define USART_MF_HALFDUPLEX 0x0400

#define USART_MF_BLOCKREAD 0x0800

#define USART_SF_RTSOFF 0x0001

#define USART_SF_CTSOFF 0x0002

#define USART_SF_DTROFF 0x0004

#define USART_SF_DSROFF 0x0008

#define USART_SF_DCDOFF 0x0010

#define USART_SF_TXDISABLED 0x0040

#define USART_SF_RXDISABLED 0x0080


Typedef RINGBUF

typedef struct _RINGBUF RINGBUF
See: Type struct _RINGBUF

Type struct _RINGBUF

struct _RINGBUF
struct _RINGBUF  
   {  
      u_char* volatile rbf_head;  
      u_char* volatile rbf_tail;  
      u_char* rbf_start;  
      u_char* rbf_last;  
      size_t rbf_siz;  
      volatile size_t rbf_cnt;  
      size_t rbf_lwm;  
      size_t rbf_hwm;  
      HANDLE rbf_que;  
   }  

Type struct _USARTDCB

struct _USARTDCB
struct _USARTDCB  
   {  
      u_long dcb_modeflags;  
      u_long dcb_statusflags;  
      u_long dcb_rtimeout;  
      u_long dcb_wtimeout;  
      RINGBUF dcb_tx_rbf;  
      RINGBUF dcb_rx_rbf;  
      u_char dcb_last_eol;  
      int (*dcb_init)(void);  
      int (*dcb_deinit)(void);  
      void (*dcb_tx_start)(void);  
      void (*dcb_rx_start)(void);  
      int (*dcb_set_flow_control)(u_long flags);  
      u_long (*dcb_get_flow_control)(void);  
      int (*dcb_set_speed)(u_long rate);  
      u_long (*dcb_get_speed)(void);  
      int (*dcb_set_data_bits)(u_char bits);  
      u_char (*dcb_get_data_bits)(void);  
      int (*dcb_set_parity)(u_char bits);  
      u_char (*dcb_get_parity)(void);  
      int (*dcb_set_stop_bits)(u_char bits);  
      u_char (*dcb_get_stop_bits)(void);  
      int (*dcb_set_status)(u_long flags);  
      u_long (*dcb_get_status)(void);  
      int (*dcb_set_clock_mode)(u_char mode);  
      u_char (*dcb_get_clock_mode)(void);  
   }  

Typedef USARTDCB

typedef struct _USARTDCB USARTDCB
See: Type struct _USARTDCB