?? tty.h
字號:
#ifndef __tty_h#define __tty_h/* Register Offset */#define SERIAL_THR 0#define SERIAL_RBR 0#define SERIAL_DLL 0#define SERIAL_DLM 0x04#define SERIAL_IER 0x04#define SERIAL_IIR 0x08#define SERIAL_FCR 0x08#define SERIAL_LCR 0x0C#define SERIAL_MCR 0x10#define SERIAL_LSR 0x14#define SERIAL_MSR 0x18#define SERIAL_SCR 0x1c#define LS_TSR_EMPTY 0x40#define LS_THR_EMPTY 0x20#define LS_RX_BREAK 0x10#define LS_RX_FRAMING_ERR 0x08#define LS_RX_PARITY_ERR 0x04#define LS_RX_OVERRUN 0x02#define LS_RX_DATA_READY 0x01#define LS_RX_ERRORS ( LS_RX_FRAMING_ERR | LS_RX_PARITY_ERR | LS_RX_OVERRUN )typedef enum { tty_baud1200, tty_baud2400, tty_baud4800, tty_baud9600, tty_baud19200, tty_baud38400, tty_baud57600, tty_baud115200, tty_baud230400} tty_baud_t;typedef struct { int error;#define TTY_NOERROR 0#define TTY_ERROR_PARITY 1#define TTY_ERROR_FRAME 2#define TTY_ERROR_OVERRUN 3#define TTY_ERROR_BI 4 int status;#define TTY_STATUS_DR 0x01#define TTY_STATUS_TXEMPTY 0x02} tty_stat_t;typedef enum {TEXT_MODE, BINARY_MODE } ser_mode_t;extern void serial_outb(int , unsigned char );extern unsigned char serial_inb(int );extern void ser_set_port(unsigned int, int);extern int ser_get_port(void);extern int ser_getbaud(void);extern int ser_setbaud(int);extern int ser_get_level(void);extern void ser_putchar(char);extern void ser_putc(char);extern int ser_puts(char *);extern char ser_getchar(void);extern char ser_getchar_stat(tty_stat_t *);extern char ser_getchar_timed(void);extern int ser_getchar_nowait(char *);extern int ser_read(char *, int);extern int ser_getint(int *val);extern void ser_settimeout(int);extern int ser_istimeout(void);extern void ser_enable_rcvIntrOnly(void);extern void ser_diable_interrupt(void);extern int ser_open(void);extern void ser_close(void);extern int ser_printf(const char *format, ...);extern void ser_setmode(ser_mode_t );#endif //__tty_h
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -