⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 termios.h

📁 带中文注释的 linux 0.11 源代码0.11,很好的
💻 H
📖 第 1 页 / 共 2 页
字号:
// termios 结构中输出模式字段c_oflag 各种标志的符号常数。#define OPOST 0000001		// 执行输出处理。#define OLCUC 0000002		// 在输出时将小写字符转换成大写字符。#define ONLCR 0000004		// 在输出时将换行符NL 映射成回车-换行符CR-NL。#define OCRNL 0000010		// 在输出时将回车符CR 映射成换行符NL。#define ONOCR 0000020		// 在0 列不输出回车符CR。#define ONLRET 0000040		// 换行符NL 执行回车符的功能。#define OFILL 0000100		// 延迟时使用填充字符而不使用时间延迟。#define OFDEL 0000200		// 填充字符是ASCII 码DEL。如果未设置,则使用ASCII NULL。#define NLDLY 0000400		// 选择换行延迟。#define NL0 0000000		// 换行延迟类型0。#define NL1 0000400		// 换行延迟类型1。#define CRDLY 0003000		// 选择回车延迟。#define CR0 0000000		// 回车延迟类型0。#define CR1 0001000		// 回车延迟类型1。#define CR2 0002000		// 回车延迟类型2。#define CR3 0003000		// 回车延迟类型3。#define TABDLY 0014000		// 选择水平制表延迟。#define TAB0 0000000		// 水平制表延迟类型0。#define TAB1 0004000		// 水平制表延迟类型1。#define TAB2 0010000		// 水平制表延迟类型2。#define TAB3 0014000		// 水平制表延迟类型3。#define XTABS 0014000		// 将制表符TAB 换成空格,该值表示空格数。#define BSDLY 0020000		// 选择退格延迟。#define BS0 0000000		// 退格延迟类型0。#define BS1 0020000		// 退格延迟类型1。#define VTDLY 0040000		// 纵向制表延迟。#define VT0 0000000		// 纵向制表延迟类型0。#define VT1 0040000		// 纵向制表延迟类型1。#define FFDLY 0040000		// 选择换页延迟。#define FF0 0000000		// 换页延迟类型0。#define FF1 0040000		// 换页延迟类型1。/* c_cflag bit meaning *//* c_cflag 比特位的含义 */// termios 结构中控制模式标志字段c_cflag 标志的符号常数(8 进制数)。#define CBAUD 0000017		// 传输速率位屏蔽码。#define B0 0000000 /* hang up */	/* 挂断线路 */#define B50 0000001		// 波特率 50。#define B75 0000002		// 波特率 75。#define B110 0000003		// 波特率 110。#define B134 0000004		// 波特率 134。#define B150 0000005		// 波特率 150。#define B200 0000006		// 波特率 200。#define B300 0000007		// 波特率 300。#define B600 0000010		// 波特率 600。#define B1200 0000011		// 波特率 1200。#define B1800 0000012		// 波特率 1800。#define B2400 0000013		// 波特率 2400。#define B4800 0000014		// 波特率 4800。#define B9600 0000015		// 波特率 9600。#define B19200 0000016		// 波特率 19200。#define B38400 0000017		// 波特率 38400。#define EXTA B19200		// 扩展波特率A。#define EXTB B38400		// 扩展波特率B。#define CSIZE 0000060		// 字符位宽度屏蔽码。#define CS5 0000000		// 每字符5 比特位。#define CS6 0000020		// 每字符6 比特位。#define CS7 0000040		// 每字符7 比特位。#define CS8 0000060		// 每字符8 比特位。#define CSTOPB 0000100		// 设置两个停止位,而不是1 个。#define CREAD 0000200		// 允许接收。#define CPARENB 0000400		// 开启输出时产生奇偶位、输入时进行奇偶校验。#define CPARODD 0001000		// 输入/输入校验是奇校验。#define HUPCL 0002000		// 最后进程关闭后挂断。#define CLOCAL 0004000		// 忽略调制解调器(modem)控制线路。#define CIBAUD 03600000 /* input baud rate (not used) */	/* 输入波特率(未使用) */#define CRTSCTS 020000000000 /* flow control */	/* 流控制 */#define PARENB CPARENB		// 开启输出时产生奇偶位、输入时进行奇偶校验。#define PARODD CPARODD		// 输入/输入校验是奇校验。/* c_lflag bits *//* c_lflag 比特位 */// termios 结构中本地模式标志字段c_lflag 的符号常数。#define ISIG 0000001		// 当收到字符INTR、QUIT、SUSP 或DSUSP,产生相应的信号。#define ICANON 0000002		// 开启规范模式(熟模式)。#define XCASE 0000004		// 若设置了ICANON,则终端是大写字符的。#define ECHO 0000010		// 回显输入字符。#define ECHOE 0000020		// 若设置了ICANON,则ERASE/WERASE 将擦除前一字符/单词。#define ECHOK 0000040		// 若设置了ICANON,则KILL 字符将擦除当前行。#define ECHONL 0000100		// 如设置了ICANON,则即使ECHO 没有开启也回显NL 字符。#define NOFLSH 0000200		// 当生成SIGINT 和SIGQUIT 信号时不刷新输入输出队列,当// 生成SIGSUSP 信号时,刷新输入队列。#define TOSTOP 0000400		// 发送SIGTTOU 信号到后台进程的进程组,该后台进程试图写// 自己的控制终端。#define ECHOCTL 0001000		// 若设置了ECHO,则除TAB、NL、START 和STOP 以外的ASCII// 控制信号将被回显成象^X 式样,X 值是控制符+0x40。#define ECHOPRT 0002000		// 若设置了ICANON 和IECHO,则字符在擦除时将显示。#define ECHOKE 0004000		// 若设置了ICANON,则KILL 通过擦除行上的所有字符被回显。#define FLUSHO 0010000		// 输出被刷新。通过键入DISCARD 字符,该标志被翻转。#define PENDIN 0040000		// 当下一个字符是读时,输入队列中的所有字符将被重显。#define IEXTEN 0100000		// 开启实现时定义的输入处理。/* modem lines *//* modem 线路信号符号常数 */#define TIOCM_LE 0x001		// 线路允许(Line Enable)。#define TIOCM_DTR 0x002		// 数据终端就绪(Data Terminal Ready)。#define TIOCM_RTS 0x004		// 请求发送(Request to Send)。#define TIOCM_ST 0x008		// 串行数据发送(Serial Transfer)。[??]#define TIOCM_SR 0x010		// 串行数据接收(Serial Receive)。[??]#define TIOCM_CTS 0x020		// 清除发送(Clear To Send)。#define TIOCM_CAR 0x040		// 载波监测(Carrier Detect)。#define TIOCM_RNG 0x080		// 响铃指示(Ring indicate)。#define TIOCM_DSR 0x100		// 数据设备就绪(Data Set Ready)。#define TIOCM_CD TIOCM_CAR#define TIOCM_RI TIOCM_RNG/* tcflow() and TCXONC use these *//* tcflow()和TCXONC 使用这些符号常数 */#define TCOOFF 0		// 挂起输出。#define TCOON 1			// 重启被挂起的输出。#define TCIOFF 2		// 系统传输一个STOP 字符,使设备停止向系统传输数据。#define TCION 3			// 系统传输一个START 字符,使设备开始向系统传输数据。/* tcflush() and TCFLSH use these *//* tcflush()和TCFLSH 使用这些符号常数 */#define TCIFLUSH 0		// 清接收到的数据但不读。#define TCOFLUSH 1		// 清已写的数据但不传送。#define TCIOFLUSH 2		// 清接收到的数据但不读。清已写的数据但不传送。/* tcsetattr uses these *//* tcsetattr()使用这些符号常数 */#define TCSANOW 0		// 改变立即发生。#define TCSADRAIN 1		// 改变在所有已写的输出被传输之后发生。#define TCSAFLUSH 2		// 改变在所有已写的输出被传输之后并且在所有接收到但// 还没有读取的数据被丢弃之后发生。typedef int speed_t;		// 波特率数值类型。// 返回termios_p 所指termios 结构中的接收波特率。extern speed_t cfgetispeed (struct termios *termios_p);// 返回termios_p 所指termios 结构中的发送波特率。extern speed_t cfgetospeed (struct termios *termios_p);// 将termios_p 所指termios 结构中的接收波特率设置为speed。extern int cfsetispeed (struct termios *termios_p, speed_t speed);// 将termios_p 所指termios 结构中的发送波特率设置为speed。extern int cfsetospeed (struct termios *termios_p, speed_t speed);// 等待fildes 所指对象已写输出数据被传送出去。extern int tcdrain (int fildes);// 挂起/重启fildes 所指对象数据的接收和发送。extern int tcflow (int fildes, int action);// 丢弃fildes 指定对象所有已写但还没传送以及所有已收到但还没有读取的数据。extern int tcflush (int fildes, int queue_selector);// 获取与句柄fildes 对应对象的参数,并将其保存在termios_p 所指的地方。extern int tcgetattr (int fildes, struct termios *termios_p);// 如果终端使用异步串行数据传输,则在一定时间内连续传输一系列0 值比特位。extern int tcsendbreak (int fildes, int duration);// 使用termios 结构指针termios_p 所指的数据,设置与终端相关的参数。extern int tcsetattr (int fildes, int optional_actions,		      struct termios *termios_p);#endif

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -