freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

組態(tài)王驅(qū)動程序用戶手冊-文庫吧資料

2024-11-15 05:05本頁面
  

【正文】 vice 關(guān)閉設(shè)備 ,若 CloseComDevice 返回 FALSE 或者遲遲不能完成關(guān)閉設(shè)備動作,將大大影響組態(tài)王的退出速度,甚至可能阻止組態(tài)王退出。 嘗試恢復(fù)設(shè)備通信 調(diào)用 TryConnect進(jìn)行設(shè)備嘗試恢復(fù) ,若返回 TRUE,則返回 進(jìn)行正常通信處理。 變量打包 調(diào)用 AddVarToPacket對變量進(jìn)行打包處理 .對于屬于同一驅(qū)動的所有變量進(jìn)行打包處理,當(dāng)所有變量打包完成, 。若一個設(shè)備使用的所有變量都成功,轉(zhuǎn) 。 設(shè)備初始化 調(diào)用 InitialDevice,對設(shè)備進(jìn)行初始化 .若 InitialDevice 返回 TRUE,轉(zhuǎn) 組態(tài)王在信息提示用戶設(shè)備初始化失敗,同時中止此設(shè)備的采集,不影響使用同一驅(qū)動的其他設(shè)備。否則組態(tài)王會在信息窗口提示打開設(shè)備失敗,認(rèn)為設(shè)備存在問題,若是串口設(shè)備,此串口下連接的所有設(shè)備都不能通信, 若是其他類型設(shè)備,則此種設(shè)備全部不能通信。 打開設(shè)備 調(diào)用 OpenComDevice,若是串口設(shè)備 ,則驅(qū)動應(yīng)在此中進(jìn)行串口初始化 .若不是串口驅(qū)動 ,驅(qū)動可以在此中完成一次性的初始化工作 。 . 運(yùn)行環(huán)境 以下步驟為特殊目的時,組態(tài)王對于每個設(shè)備都會調(diào)用一次此函數(shù)。 當(dāng)用戶點(diǎn)擊讀取,組態(tài)王就開始變量采集。 串口設(shè)備測試 若用戶使用的設(shè)備是串口設(shè)備,可以方便的使用 串口設(shè)備測試工具 進(jìn)行測試 .用戶進(jìn)入測試設(shè)備對話框,如下圖所示: 當(dāng)用戶進(jìn)入此對話框時,組態(tài)王立刻調(diào)用 GetRegisters 獲取設(shè)備可以使用的寄存器列表。 組 態(tài)王會將驅(qū)動域的輸入作為 MiniDbItem 傳遞給驅(qū)動, ConvertUserConfigToVar 將結(jié)果返回在組態(tài)王建立的變量 PLCVAR中 。具體解釋參見 GetRegisters。 新建變量 用戶在變量字典里面點(diǎn)擊新建變量時,會彈 出如下建立變量的對話框, 若用戶有不是驅(qū)動使用域填寫有誤或者有相關(guān)的域 (包括驅(qū)動使用域 )沒有填寫 ,組態(tài)王將會給出相應(yīng)的提示 ,即組態(tài)王不調(diào)用驅(qū)動,直接給出錯誤提示。 參數(shù) lpPacket [in,out] 包指針 接口函數(shù)的調(diào)用 開發(fā)環(huán)境 新建設(shè)備 在向?qū)ы撦斎氲刂纷址畷r,程序加載驅(qū)動,并調(diào)用驅(qū)動的 StrToDevAddr 當(dāng)向?qū)ы撧D(zhuǎn)向下一頁,也就是點(diǎn)擊下一步時,組態(tài)王會調(diào)用 StrDevToAddr,并將用戶輸入傳遞給驅(qū)動。 XProtocolImp2::ProcessPacket2 XProtocolImp2:: ProcessPacket2(LPVOID lpPacket) 類型 Public 目的 根據(jù)協(xié)議及包狀態(tài)信息進(jìn)行相應(yīng)的處理 ,例如進(jìn)行讀寫處理,如果讀成功則把數(shù)據(jù)寫入pPacvarList。 返回值 :成功返回 TRUE,否則返回 FALSE。 返回值 成功返回 TRUE,否則返回 FALSE。 返回值 將最近一次的錯誤信息。 備注 當(dāng) ProcessPacket 失敗后 , TryConnect將被組態(tài)王調(diào)用 2次,如果仍然失敗,則該接口將按設(shè)定的嘗試連接間隔被組態(tài)王調(diào)用。 lpDevAddr [in] 應(yīng)將此參數(shù)轉(zhuǎn)換為結(jié)構(gòu) PDEVADDR。 返回值 嘗試通訊成功返回 TRUE,否則返回 FALSE。 參數(shù) lpPacket [In, out] 包指針 XProtocolImp::CloseComDevice XProtocolImp::CloseComDevice() 類型 :Public 目的 :關(guān)閉該通訊設(shè)備 返回值 BOOL:成功則返回 TRUE,否則返回 FALSE。 XProtocolImp::ProcessPacket XProtocolImp:: ProcessPacket(LPVOID lpPacket) 類型 Public 目的 根據(jù)協(xié)議及包狀態(tài)信息進(jìn)行相應(yīng)的處理 ,例如進(jìn)行讀寫處理,如果讀成功則把數(shù)據(jù)寫入pPacvarList。 參數(shù) pDeviceName [in] 設(shè)備的唯一名字 nUnitAddr [in] 設(shè)備地址 lpDevAddr [in] 應(yīng)將此參數(shù)轉(zhuǎn)換為結(jié)構(gòu) PDEVADDR。否則返回 FALSE。 pRegNum [out] 返回寄存器的個數(shù),如果 szDeviceName 無效,則返回 0。成功返回 TRUE,否則返回 FALSE 參數(shù) szDeviceName [in] 設(shè)備的唯一名字 ppReg [out] 返回寄存器信息的指針數(shù)組的指針。 成員: sRegName:寄存器名稱 nLowIndex:開始通道 nUpperIndex:結(jié)束通道 7. 接口函數(shù) 接口描述 組態(tài)王與驅(qū)動交互,包括 2 個 COM 接口 : IprotocolImp(老接口 ) 和 IProtocolImp2(新接口 ) IProtocolImp::StrToDevAddr XProtocolImp::StrToDevAddr(const TCHAR* str, LPVOID lpDevAddr) 類型 :Public 目的 :實現(xiàn)對地址輸入的整理,判斷用戶輸入的地址是否合法,并 將地址的數(shù)值傳給組態(tài)王 ,如果必要,也可以將地址以字符串的形式傳給組態(tài)王。 int nData。 int nUpperIndex。 成 員: SDeviceName: 設(shè)備名稱,最大允許長度是 32,使用 TCHAR字符 REG_INFO 該結(jié)構(gòu)定義了 寄存器信息 類型 def struct reginfo { TCHAR sRegName[8]。 成員: wVarId:變量 ID wNo:通道 wDataType:數(shù)據(jù)類型 Special:目前沒有用到 plcValue:PLCVAR結(jié)構(gòu)體指針 wQualities:質(zhì)量戳, 0xc0代表 GOOD, 0代表 BAD. ftTimeStamps: 時間戳,在驅(qū)動中一般設(shè)置當(dāng)前的時間 DEVICE_INFO 該結(jié)構(gòu)定義了 設(shè)備信息 類型 def struct deviceinfo { TCHAR sDeviceName[32]。 FILETIME ftTimeStamps。 BYTE Special[4]。 WORD wDataType。 成員: wVarId: 變量 ID wNo:通道 wDataType:數(shù)據(jù)類型 Special:目前沒有使用 plcValue:PLCVAR結(jié)構(gòu)體指針 ID_NO2 該結(jié)構(gòu)定義了 新的接口的變量 類型 def struct IdNo2 { WORD wVarId。 PlcValue plcValue。 WORD wDataType。 成員: nDeviceIndex:設(shè)備索引 nUnitNo:設(shè)備 地址單元 pDevAddr:設(shè)備地址結(jié)構(gòu)指針 pszDevName:設(shè)備地址 nRegType:寄存器類型 nSubType: nSubType1: nSubType2:子類型,沒有用到,自己可以使用 nStartNo:開始通道 nEndNo:結(jié)束通道 nPacketType:包讀寫類型 VarList:變量列表,存儲 ID_NO和 ID_NO2兩種類型變量 ID_NO 該結(jié)構(gòu)定義了老的接口的變量 類型 def struct IdNo { WORD wVarId。 CPtrList varList。 int nEndNo。 short nSubType2。 short nSubType。 TCHAR *pszRegName。 DEVADDR * pDevAddr。 nNo:寄存器通 道 nDataType:數(shù)據(jù)類型 nAccessMode:讀寫屬性 nFrequency:采集頻率 nTimerCount:超時次數(shù) pComThread:通訊線程 maxRaw:最大原始值 minRaw:最小原始值 PACKET 該結(jié)構(gòu)定義了 通訊包的屬性 類型 def struct Packet { short nDeviceIndex。 成員: wvarID:變量 ID wVarType:變量類型,為如下幾種: Bit, byte, int, uint, BCD, long, float, longbcd, string szVarName:變量名 nDeviceIndex:設(shè)備索引 nUnitNo:設(shè)備 地址單元 pDevAddr:設(shè)備地址 pszRegName:寄存器名稱 nRegType。 short isUnvalid。 short bConvertion。 DDEValue maxRaw。 long nTimerCount。 short nAccessMode。 short nNo。 short nSubType1。 short nRegType。 DEVADDR *pDevAddr。 short nDeviceIndex。 WORD wVarType。339。239。139。代表串口設(shè)備 DeviceName: 邏輯名稱 =={COM1, COM2...} BaudRate: 波特率,范圍是從 110到 256000。 成員: nFlag: 串口標(biāo)志,目前沒有用到 . DeviceKind: 設(shè)備類型, 39。 short isRs232。 short failTimes。 short parity。 short dataBits。 TCHAR deviceName[32]。 nDevAddr: 實際轉(zhuǎn)換后的設(shè)備地址數(shù)字 . ComDevice 這是 串口設(shè)置信息 的結(jié)構(gòu)體 . struct ComDevice { short nFlag。 }DEVADDR, * PDEVADDR。 _DevAddr 該結(jié)構(gòu)定義了 設(shè)備地址格式 . 類型 def struct _DevAddr { UINT nDevAddr。 驅(qū)動開發(fā)包安裝完成后,這個工具存放在目錄 KingViewDriver下。 同時,考慮到有的開發(fā)者習(xí)慣使用 Visual Studio 98進(jìn)行開發(fā)編譯,我們也要有一個工具來將 Visual Studio 2020的工程文件轉(zhuǎn)換成 Visual Studio 98的工程文件。 其他支持 : o USB 通訊 o ADO 數(shù)據(jù)庫操作 ( 6)點(diǎn)擊“確定”后,將完成驅(qū)動工程的創(chuàng)建工作。 o 使用“ PACKET”進(jìn)行通訊,適用于普通的驅(qū)動。 嘗試連接,目前準(zhǔn)備了如下幾種類型: o 永遠(yuǎn)為 True,常用于板 卡驅(qū)動。 設(shè)備名稱 : 默認(rèn)的 設(shè)備名稱 是 “ Name1”,可以自由填寫,但須注意應(yīng)該 與設(shè)備列表中的設(shè)備名稱保持一致 。 o 以太網(wǎng)驅(qū)動 (UDP服務(wù)器端 ) 目前還沒有實現(xiàn),參考 TCP方式,代碼中需要改動的地方有標(biāo)注。這種方式需要驅(qū)動主動去連接設(shè)備。
點(diǎn)擊復(fù)制文檔內(nèi)容
教學(xué)課件相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1