linux串口程序设计

linux串口程序设计

ID:19646470

大小:23.42 KB

页数:7页

时间:2018-10-04

linux串口程序设计_第1页
linux串口程序设计_第2页
linux串口程序设计_第3页
linux串口程序设计_第4页
linux串口程序设计_第5页
资源描述:

《linux串口程序设计》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、一、数据成员termios函数族提供了一个常规的终端接口,用于控制非同步通信端口。这个结构包含了至少下列成员:tcflag_tc_iflag;/*输入模式*/tcflag_tc_oflag;/*输出模式*/tcflag_tc_cflag;/*控制模式*/tcflag_tc_lflag;/*本地模式*/cc_tc_cc[NCCS];/*控制字符*/structtermios{unsignedshortc_iflag;/*输入模式标志*/unsignedshortc_oflag;/*输出模式标志*/unsignedshortc_c

2、flag;/*控制模式标志*/unsignedshortc_lflag;/*区域模式标志或本地模式标志或局部模式*/unsignedcharc_line;/*行控制linediscipline*/unsignedcharc_cc[NCC];/*控制字符特性*/};二、作用这个变量被用来提供一个健全的线路设置集合,如果这个端口在被用户初始化前使用.驱动初始化这个变量使用一个标准的数值集,它拷贝自tty_std_termios变量.tty_std_termos在tty核心被定义为:structtermiostty_std_term

3、ios={.c_iflag=ICRNL

4、IXON,.c_oflag=OPOST

5、ONLCR,.c_cflag=B38400

6、CS8

7、CREAD

8、HUPCL,.c_lflag=ISIG

9、ICANON

10、ECHO

11、ECHOE

12、ECHOK

13、ECHOCTL

14、ECHOKE

15、IEXTEN,.c_cc=INIT_C_CC};这个structtermios结构用来持有所有的当前线路设置,给这个tty设备的一个特定端口.这些线路设置控制当前波特率,数据大小,数据流控设置,以及许多其他值.三、成员的值(一)c_iflag标志常量:Inputmode

16、(输入模式)inputmode可以在输入值传给程序之前控制其处理的方式。其中输入值可能是由序列埠或键盘的终端驱动程序所接收到的字元。我们可以利用termios结构的c_iflag的标志来加以控制,其定义的方式皆以OR来加以组合。IGNBRK:忽略输入中的BREAK状态。(忽略命令行中的中断)BRKINT:(命令行出现中断时,可产生一插断)如果设置了IGNBRK,将忽略BREAK。如果没有设置,但是设置了BRKINT,那么BREAK将使得输入和输出队列被刷新,如果终端是一个前台进程组的控制终端,这个进程组中所有进程将收到SIGI

17、NT信号。如果既未设置IGNBRK也未设置BRKINT,BREAK将视为与NUL字符同义,除非设置了PARMRK,这种情况下它被视为序列377��。IGNPAR:忽略桢错误和奇偶校验错。PARMRK:如果没有设置IGNPAR,在有奇偶校验错或桢错误的字符前插入377�。如果既没有设置IGNPAR也没有设置PARMRK,将有奇偶校验错或桢错误的字符视为�。INPCK:启用输入奇偶检测。ISTRIP:去掉第八位。INLCR:将输入中的NL翻译为CR。(将收到的换行符号转换为Return)IGNCR:忽略输入

18、中的回车。ICRNL:将输入中的回车翻译为新行(除非设置了IGNCR)(否则当输入信号有CR时不会终止输入)。IUCLC:(不属于POSIX)将输入中的大写字母映射为小写字母。IXON:启用输出的XON/XOFF流控制。IXANY:(不属于POSIX.1;XSI)允许任何字符来重新开始输出。(?)IXOFF:启用输入的XON/XOFF流控制。IMAXBEL:(不属于POSIX)当输入队列满时响零。Linux没有实现这一位,总是将它视为已设置。(二)c_oflag标志常量:Outputmode(输出模式)Outputmode主要

19、负责控制输出字元的处理方式。输出字元在传送到序列埠或显示器之前是如何被程序来处理。输出模式是利用termios结构的c_oflag的标志来加以控制,其定义的方式皆以OR来加以组合。OPOST:启用具体实现自行定义的输出处理。OLCUC:(不属于POSIX)将输出中的小写字母映射为大写字母。ONLCR:(XSI)将输出中的新行符映射为回车-换行。OCRNL:将输出中的回车映射为新行符ONOCR:不在第0列输出回车。ONLRET:不输出回车。OFILL:发送填充字符作为延时,而不是使用定时来延时。OFDEL:(不属于POSIX)填

20、充字符是ASCIIDEL(0177)。如果不设置,填充字符则是ASCIINUL。NLDLY:新行延时掩码。取值为NL0和NL1。CRDLY:回车延时掩码。取值为CR0,CR1,CR2,或CR3。TABDLY:水平跳格延时掩码。取值为TAB0,TAB1,TAB2,TAB3(或X

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。