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

正文內(nèi)容

組態(tài)王驅動程序用戶手冊(編輯修改稿)

2025-12-13 05:05 本頁面
 

【文章內(nèi)容簡介】 傳遞給驅動, ConvertUserConfigToVar 將結果返回在組態(tài)王建立的變量 PLCVAR中 。 具體解釋見 ConvertUserConfigToVar。 串口設備測試 若用戶使用的設備是串口設備,可以方便的使用 串口設備測試工具 進行測試 .用戶進入測試設備對話框,如下圖所示: 當用戶進入此對話框時,組態(tài)王立刻調(diào)用 GetRegisters 獲取設備可以使用的寄存器列表。 當用戶點擊添加或者加入變量時,組態(tài)王立刻調(diào)用 ConvertUserConfigToVar進行變量校驗。 當用戶點擊讀取,組態(tài)王就開始變量采集。所有采集步驟與運行環(huán)境一致,只是這兒測試只是測試一個設備 ,而運行環(huán)境采集定義的所有的設備。 . 運行環(huán)境 以下步驟為特殊目的時,組態(tài)王對于每個設備都會調(diào)用一次此函數(shù)。 校驗設備地址 調(diào)用 StrToDevAddr,對用戶輸入的地址字符串進行轉換 .若 StrToDevAddr 返回 TRUE,轉 . 否則組態(tài)王提示用戶地址格式不對,同時中止此設備的采集,不影響使用同一驅動的其他設備。 打開設備 調(diào)用 OpenComDevice,若是串口設備 ,則驅動應在此中進行串口初始化 .若不是串口驅動 ,驅動可以在此中完成一次性的初始化工作 。 若 OpenComDevice 返回 TRUE,組態(tài)王會在信息窗口提示打開設備成功,并給出成功的設備名稱,同時轉 。否則組態(tài)王會在信息窗口提示打開設備失敗,認為設備存在問題,若是串口設備,此串口下連接的所有設備都不能通信, 若是其他類型設備,則此種設備全部不能通信。 OpenComDevice的參數(shù)由用戶配置 。 設備初始化 調(diào)用 InitialDevice,對設備進行初始化 .若 InitialDevice 返回 TRUE,轉 組態(tài)王在信息提示用戶設備初始化失敗,同時中止此設備的采集,不影響使用同一驅動的其他設備。 變量校驗 調(diào)用 ConvertUserConfigToVar對所有變量進行 變量校驗 。若一個設備使用的所有變量都成功,轉 。若某一個設備中有一個變量校驗失敗,則組態(tài)王會在信息窗口提示變量校驗無效,同時組態(tài)王會中止此設備的采集。 變量打包 調(diào)用 AddVarToPacket對變量進行打包處理 .對于屬于同一驅動的所有變量進行打包處理,當所有變量打包完成, 。 設備通信 調(diào)用 ProcessPacket2進行設備通信 ,若返回 TRUE,則釋放 PACKET,同時進行下一個 PACKET 處理 .當按照刷新頻率全部處理完畢,轉 重新打包通信 .若返回 FALSE,則轉 。 嘗試恢復設備通信 調(diào)用 TryConnect進行設備嘗試恢復 ,若返回 TRUE,則返回 進行正常通信處理。若返回失敗組態(tài)王會再 次調(diào)用 TryConnect,若仍然返回 FALSE,組態(tài)王認為設備失敗,會中止設備采集一段時間,在定義設備時設置。 關閉設備 調(diào)用 CloseComDevice 關閉設備 ,若 CloseComDevice 返回 FALSE 或者遲遲不能完成關閉設備動作,將大大影響組態(tài)王的退出速度,甚至可能阻止組態(tài)王退出。 8 程序結構 程序包含如下幾個 主要的類 : 驅動工程類 (Cpro): 實現(xiàn) 2 個接口 : IprotocolImp 和 IprotocolImp2。 設備類 (CDev): 實現(xiàn) COM 接口 , 包括 2個類 ,設備基類和設備子類 。 通訊類 (CCom): 實現(xiàn)串口 ,網(wǎng)卡等的通訊 ,開發(fā)包向導會根據(jù)您的設置 ,自動地產(chǎn)生串口通訊類 (CSerialCom) 或者網(wǎng)絡通訊類 (CNetCom), 您也可以根據(jù)需要添加 USB通訊類 (CUSBCom)。 調(diào)試信息類 (CDebug): 該類實現(xiàn)各種 調(diào)試信息在組態(tài)王信息窗口中的輸出 ,比如 錯誤信息,接口信息,數(shù)據(jù)信息 等。 幫助函數(shù) (CHelper): 提供了一系列 您在開發(fā)驅動過程中可能會用到的功能函數(shù) 。 數(shù)據(jù)楨校驗類 (CCheck): 提供了在開發(fā)中會遇到的各 種校驗函數(shù),包括和 校驗、異或校驗、循環(huán)冗余校驗 等。 類的調(diào)用與繼承關系,如下圖: 驅動工程類 (CPro) 該類實現(xiàn) 2個接口 : IprotocolImp 和 IprotocolImp2。 關于接口函數(shù)目的,見“ ” 節(jié)。 設備類 (CDev) 實現(xiàn) COM接口,包含 2個類,設備基類 (CDevBase)和設備子類 (CDev)。 類 CDevBase 是所有設備子類的父類 。 屬性 : m_szDevKind:設備類型 . m_pSerialCom:串口通訊類指針 m_pCheck:校驗 類指針 m_pPro:工程類指針 操作 : GetRegisters BOOL CDev::GetRegisters( LPVOID *ppReg, int *pRegNum ) 類型 Public 目的 得到 由 szDeviceName 確定的寄存器的名字和個數(shù) 。 返回值 成功返回 TRUE,否則返回 FALSE。 參數(shù) ppReg [out] 返回寄存器信息的指針數(shù)組的指針。 pRegNum [out] 返回寄存器的個數(shù)。 GetDevices BOOL CDev::GetDevices(LPVOID *ppDevice, int *pDeviceNum) 類型 :Public 目的 :得到設備的名字和個數(shù)。 返回值 :成功返回 TRUE,否則返回 FALSE。 參數(shù) :ppDevice [out] 返回設備列表信息的指針。 pDeviceNum:[out] 返回設備的個數(shù)。 ConvertUserConfigToVar WORD CDev::ConvertUserConfigToVar( LPVOID lpDbItemItem, LPVOID lpVar) 類型 :Public 目的 :將用戶的配置字符串轉換為組態(tài)王變量結構 返回值 :WORD:如果轉換成功則返回 0,否則返回非零的錯誤代碼。 參數(shù) lpDbItem:[in] 指向結構 MiniDbItem 的指針。 lpVar:[in,out] 指向結構 PLCVAR 的指針 ,返回變量就存放在這里。 AddVarToPacket BOOL CDev::AddVarToPacket( LPVOID lpVar, int nVarAccessType, LPVOID lpPacket) 類型 Public 目的 確認變量是否能夠與一個包里的其他變量一起進行采集,以進行變量的打包 , 如果可以加入 ,返回 TRUE 并修改包的起止地址 。否則返回 FALSE。 返回值 BOOL: FALSE 表示不能打包,否則能。 參數(shù) lpVar [in] 變量指針 nVarAccessType [in] 讀寫方式 lpPacket [int] 包指針 ProcessPacket2 BOOL CDev::ProcessPacket2( LPVOID lpPacket ) 類型 Public 目的 根據(jù)協(xié)議及包狀態(tài)信息進行相應的處理 ,例如進行讀寫處理,如果讀成功則把數(shù)據(jù)寫入 pPacvarList。(在新 接口中調(diào)用)。 返回值 BOOL:如果成功,返回 TRUE,否則,返回 FALSE。 參數(shù) lpPacket [in,out] 包指針。 TryConnect BOOL CDev::TryConnect ( const TCHAR* szDeviceName, int iUnitAddr, LPVOID lpDevAddr ) 類型 Public 目的 與地址為 UnitAddr 的設備嘗試進行通訊 ,用于故障偵探及恢復嘗試。 返回值 嘗試通訊成功返回 TRUE,否則返回 FALSE。 參數(shù) pDeviceName [in] 設備的唯一名字。 nUnitAddr [in] 需要進行故障偵探及恢復嘗試的設備的地址。 lpDevAddr [in] 應將此參數(shù)轉換為結構 PDEVADDR。此結構詳情參閱 文件。 備注 當 ProcessPacket 失敗后 , TryConnect將被組態(tài)王調(diào)用 2次,如果仍然失敗,則該接口將按設定的嘗試連接間隔被組態(tài)王調(diào)用。 StrToDevAddr BOOL CDevBase::StrToDevAddr(const TCHAR* str, LPVOID lpDevAddr) 類型 :Public 目的 :實現(xiàn) 對地址輸入的整理,判斷用戶輸入的地址是否合法,并將地址的數(shù)值傳給組態(tài)王 , 如果必要,也可以將地址以字符串的形式傳給組態(tài)王 。 返回值 :成功返回 TRUE,否則返回 FALSE。 參數(shù) str [in] 用戶輸入的地址字符串。 lpDevAddr [in,out] 用于保存地址信息的結構。 SetProPtr void CDevBase::SetProPtr(CProject16Pro* pPro) 類型 Public 目的 設置工程類的指針 。 返回值 Null 參數(shù) pPro [in] 工程類的指針。 GetSendTimes int CDevName1::GetSendTimes(PPACKET pPac) 類型 Public 目的 獲取與設備一次交互的次數(shù) 。 返回值 一個整型數(shù)據(jù)。 參數(shù) pPac [in,out] 包指針 GetSendString BOOL CDev::GetSendString(PPACKET pPac,intamp。 iLen, intamp。 iRecLen, int iTimes) 類型 Public 目的 根據(jù)協(xié)議組合成發(fā)送楨 。 返回值 成功返回 TRUE,否則返回 FALSE。 參數(shù) pPac [in,out] 指向 PACKET 結構的指針。 iLen [out] 發(fā)送數(shù)據(jù)的長度。 iRecLen [out] 需要接收的數(shù)據(jù)的長度。 iTimes [in] 在一次發(fā)送過程中調(diào)用的次序。 Transmission BOOL CDev::Transmission (int iLen, int iExpectedLen, intamp。 iRecLen) 類型 Public 目的 通訊處理函數(shù) 。 返回值 成功返回 TRUE,否則返回 FALSE。 參數(shù) iLen [in] 數(shù)據(jù)的長度 iExpectedLen [in,out] 期望接收到數(shù)據(jù)的長度。 iRecLen [in,out] 實際接收到數(shù)據(jù)的長度。 GetFirstFrame BOOL CDev::GetFirstFrame (int nbyteRead, int nExpectedLen, BYTE chFrameHead) 類型 Public 目的 獲取第一個正確的數(shù)據(jù)楨 。 返回值 成功返回 TURE,否則 ,返回 FALSE。 參數(shù) nbyteRead [in] 實際接收到的數(shù)據(jù)的長度。 iExpectedLen [in] 期望接收到的數(shù)據(jù)的長度。 chFrameHead [in] 第一個正確數(shù)據(jù)楨的位置。 PreProcessData BOOL CDev::PreProcessData (PPACKET pPac, int nbyteRead ,int nExpectedLen, int iTimes) 類型 Public 目的 檢查接收的數(shù)據(jù) 。 返回值 成功返回 TURE,否則 ,返回 FALSE。 參數(shù) pPac [in,out] 包指針。 nbyteRead [in] 實際接收到的數(shù)據(jù)長度。 iExpectedLen [in] 期望接收到的數(shù)據(jù)長度。 SendDataToKingView BOOL CDev::SendDataToKingView(PPACKET pPac, int iLen) 類型 Public 目的 向組態(tài)王傳送數(shù)據(jù) 。 返回值 成功返回 TRUE,否則 ,返回 FALSE。 參數(shù) pPac [in,out] 包指針。 iLen [Out] 接收到的數(shù)據(jù)長度。 通訊類 (CCom) 實現(xiàn)串口 ,網(wǎng)卡等的通訊 ,開發(fā)包向導會根據(jù)您的設置 ,自動地產(chǎn)生 串口通訊類 (CSer
點擊復制文檔內(nèi)容
教學課件相關推薦
文庫吧 www.dybbs8.com
備案圖片鄂ICP備17016276號-1