嵌入式代码open("/dev/ttyso",o_RDWR/O_NOCTTY/O_NDELAY);这个代码说的含义
来源:互联网 发布:linux python vim 编辑:程序博客网 时间:2024/05/16 07:15
http://zhidao.baidu.com/link?url=uz3ba1lcZXnpHrUHVn7IepCw5N5JHfv9zvlRo5gJyy_dEGMUM3EuyFQ5lwf6toxbYLsGoaX4r_UnGrSm77Xxy_
这是文件I/O的常用函数,open函数,open函数用来打开一个设备,他返回的是一个整型变量,如果这个值等于-1,说明打开文件出现错误,如果为大于0的值,那么这个值代表的就是文件描述符。一般的写法是if((fd=open("/dev/ttys0",O_RDWR | O_NOCTTY | O_NDELAY)<0){perror("open");}这个事常用的一种用法fd是设备描述符,linux在操作硬件设备时,屏蔽了硬件的基本细节,只把硬件当做文件来进行操作,而所有的操作都是以open函数来开始,它用来获取fd,然后后期的其他操作全部控制fd来完成对硬件设备的实际操作。你要打开的/dev/ttyS0,代表的是串口1,也就是常说的com1,后面跟的是一些控制字。int open(const char *pathname, int oflag, …/*, mode_t mode * / ) ;这个就是open函数的公式。控制字可以有多种,我现在给你列出来: O_RDONLY 只读打开。 O_WRONLY 只写打开。 O_RDWR 读、写打开。 O_APPEND 每次写时都加到文件的尾端。 O_CREAT 若此文件不存在则创建它。使用此选择项时,需同时说明第三个参数mode,用其说明该新文件的存取许可权位。 O_EXCL 如果同时指定了O_CREAT,而文件已经存在,则出错。这可测试一个文件是否存在,如果不存在则创建此文件成为一个原子操作。 O_TRUNC 如果此文件存在,而且为只读或只写成功打开,则将其长度截短为0。 O_NOCTTY 如果p a t h n a m e指的是终端设备,则不将此设备分配作为此进程的控制终端。 O_NONBLOCK 如果p a t h n a m e指的是一个F I F O、一个块特殊文件或一个字符特殊文件,则此选择项为此文件的本次打开操作和后续的I / O操作设置非阻塞方式。 O_SYNC 使每次w r i t e都等到物理I / O操作完成。这些控制字都是通过“或”符号分开(|)通过这些介绍,你的那段代码就不难解释了:是以读写方式、不把该文件作为终端设备、无延时模式打开串口1.
0 0
- 嵌入式代码open("/dev/ttyso",o_RDWR/O_NOCTTY/O_NDELAY);这个代码说的含义
- 嵌入式代码open("/dev/ttyso",o_RDWR/O_NOCTTY/O_NDELAY);
- 嵌入式代码open(“/dev/buttons”,O_RDWR);含义
- open(/dev/ietctl, O_RDWR) 参数含义
- open(/dev/ietctl, O_RDWR) 参数含义
- open(/dev/ietctl, O_RDWR) 参数含义
- open(/dev/ietctl, O_RDWR)
- open(/dev/ietctl, O_RDWR)
- open("/dev/null",o_rdwr)作用
- open("/dev/null",o_rdwr)的问题
- open("/dev/mem ",O_RDWR | O_SYNC)
- open("/dev/mem ",O_RDWR | O_SYNC)
- linux硬件设备操作函数 open(/dev/ietctl, O_RDWR|...)
- linux硬件设备操作函数 open(/dev/ietctl, O_RDWR|...)
- open(/dev/ietctl, O_RDWR) 控制…
- linux硬件设备操作函数 open(/dev/ietctl, O_RDWR|...)
- linux硬件设备操作函数 open(/dev/ietctl, O_RDWR|...)
- open在使用O_RDWR时
- 迭代器思想总结
- 关于GreenDao的初步使用
- 读论文BinarizedNormedGradientsforObjectnessEstimationat300fps
- 定时器锁屏问题分析
- [乐意黎原创] 完美解决 javax.mail.SendFailedException: Invalid Address 与 SMTPAddressFailedException 抛错
- 嵌入式代码open("/dev/ttyso",o_RDWR/O_NOCTTY/O_NDELAY);这个代码说的含义
- 网站建设过程中必须要重视的元素
- final的运用
- 柯南君: 看TCP/IP 之一 (协议分层)
- genymotion 此应用与您的手机不兼容
- C语言之基本运算和流程控制
- iOS_AFNetworking初体验 与 NSdata转NSDictionary
- [Windows]_[初级]_[/MD、/MT、/LD(使用运行库)]
- Java中的==和equals区别(转)