一般的写法是:
if((fd = open(“/dev/buttons”,O_RDWR))<0){
perror(“open”); }
这个常用的一种用法fd是设备表述符,linux在操作硬件设备时,屏蔽了硬件的基本细节,只把硬件当作文件来操作,而所有的操作都是以open
函数来开始,他用来获取fd,后期的其他操作全部控制fd来完成对硬件设备的实际操作。控制字有很多种:
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操作完成
嵌入式代码open(“/dev/buttons”,O_RDWR);含义
最新推荐文章于 2023-10-09 15:16:34 发布