嵌入式代码open(“/dev/buttons”,O_RDWR);含义

一般的写法是:
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操作完成

  • 2
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
If Not IsObject(application) Then Set SapGuiAuto = GetObject("SAPGUI") Set application = SapGuiAuto.GetScriptingEngine End If If Not IsObject(connection) Then Set connection = application.Children(0) End If If Not IsObject(session) Then Set session = connection.Children(0) End If If IsObject(WScript) Then WScript.ConnectObject session, "on" WScript.ConnectObject application, "on" End If session.findById("wnd[0]").maximize session.findById("wnd[0]/usr/tabsTAXI_TABSTRIP_OVERVIEW/tabpT\02/ssubSUBSCREEN_BODY:SAPMV45A:4431/subSUBSCREEN_TC:SAPMV45A:4909/tblSAPMV45ATCTRL_U_ERF_WERTKONTRAKT").getAbsoluteRow(0).selected = true'选中一个item session.findById("wnd[0]/usr/tabsTAXI_TABSTRIP_OVERVIEW/tabpT\02/ssubSUBSCREEN_BODY:SAPMV45A:4431/subSUBSCREEN_TC:SAPMV45A:4909/tblSAPMV45ATCTRL_U_ERF_WERTKONTRAKT/txtVBAP-POSNR[0,0]").setFocus session.findById("wnd[0]/usr/tabsTAXI_TABSTRIP_OVERVIEW/tabpT\02/ssubSUBSCREEN_BODY:SAPMV45A:4431/subSUBSCREEN_TC:SAPMV45A:4909/tblSAPMV45ATCTRL_U_ERF_WERTKONTRAKT/txtVBAP-POSNR[0,0]").caretPosition = 5 session.findById("wnd[0]/usr/tabsTAXI_TABSTRIP_OVERVIEW/tabpT\02/ssubSUBSCREEN_BODY:SAPMV45A:4431/subSUBSCREEN_TC:SAPMV45A:4909/subSUBSCREEN_BUTTONS:SAPMV45A:4052/btnBT_PKSE").press session.findById("wnd[0]/tbar[1]/btn[43]").press'进入Pricing agreement 编辑界面 session.findById("wnd[1]/usr/ctxtRV13A-KSCHL").text = "ZS61" '输入ZS61 condition type session.findById("wnd[1]/usr/ctxtRV13A-KSCHL").caretPosition = 4 session.findById("wnd[1]/tbar[0]/btn[0]").press session.findById("wnd[2]/usr/sub:SAPLV14A:0100/radRV130-SELKZ[4,0]").select’选择Key combination session.findById("wnd[2]/usr/sub:SAPLV14A:0100/radRV130-SELKZ[4,0]").setFocus’选择SD Document/Item/Product Hierachy level 1 session.findById("wnd[2]").sendVKey 2 session.findById("wnd[0]/usr/tblSAPMV13ATCTRL_FAST_ENTRY/ctxtKOMG-PRODH1[0,0]").text = "SP"'放入SP备件 session.findById("wnd[0]/usr/tblSAPMV13ATCTRL_FAST_ENTRY/txtKONP-KBETR[2,0]").text = "100"'放入100%折扣 session.findById("wnd[0]/usr/tblSAPMV13ATCTRL_FAST_ENTRY/ctxtRV13A-DATAB[8,0]").text = "01.01.2023"'放入开始生效时间 session.findById("wnd[0]/usr/tblSAPMV13ATCTRL_FAST_ENTRY/ctxtRV13A-DATBI[9,0]").text = "04.03.2024"'放入结束生效时间 session.findById("wnd[0]/usr/tblSAPMV13ATCTRL_FAST_ENTRY/ctxtRV13A-DATBI[9,0]").setFocus session.findById("wnd[0]/usr/tblSAPMV13ATCTRL_FAST_ENTRY/ctxtRV13A-DATBI[9,0]").caretPosition = 10 session.findById("wnd[0]/tbar[0]/btn[11]").press
06-10
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值