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

正文內(nèi)容

串口設(shè)備遠(yuǎn)程監(jiān)控軟件設(shè)計(jì)與實(shí)現(xiàn)(本科畢業(yè)論文)-資料下載頁(yè)

2025-05-16 06:42本頁(yè)面

【導(dǎo)讀】隨著互聯(lián)網(wǎng)的發(fā)展,人們對(duì)通訊的認(rèn)識(shí)進(jìn)入到一個(gè)新的時(shí)期,通訊變得更加快速和方便。甚至物與物的通訊需要。物聯(lián)網(wǎng)的基礎(chǔ)網(wǎng)絡(luò)仍。然是互聯(lián)網(wǎng),只是在終端接入上則是各式各樣的物體。后100米的通訊實(shí)現(xiàn)方法變得非常多樣化,也是業(yè)界研究的熱點(diǎn)。口通訊與互聯(lián)網(wǎng)的結(jié)合,完成一臺(tái)串口設(shè)備的遠(yuǎn)程通訊。

  

【正文】 28]數(shù)組中的內(nèi)容。 GPS 設(shè)備中協(xié)議中,時(shí)間部分協(xié)議如下: 以 GPS 協(xié)議接收數(shù)據(jù)的時(shí)間幀為例, DisPlay()函數(shù)解析時(shí)間過(guò)程如下: 1) 判斷是否是時(shí)間幀: 時(shí)間幀的控制字為 0x81,而控制字存在 m_RecvData[128]數(shù)組的第 3個(gè)字節(jié),即 m_RecvData[2]中,所以第一步判斷 m_RecvData[2]的數(shù)據(jù),若其為 0x81,則對(duì)其按時(shí)間幀進(jìn)行解析 2) 時(shí)分秒的解析 根據(jù)協(xié)議,數(shù)據(jù)項(xiàng)長(zhǎng)度為 3 個(gè)字節(jié),存儲(chǔ)在 m_RecvData[128]數(shù)組的第 57 個(gè)字節(jié)中。及 m_RecvData[4]中為時(shí), m_RecvData[5]中為分, m_RecvData[6]中 為秒。對(duì)此三個(gè)字節(jié)的數(shù)據(jù),利用函數(shù)解析后,顯示到列表控件響應(yīng)的位置,如下: (%d, m_RecvData[4])。 (%d, m_RecvData[5])。 (%d, m_RecvData[6])。 其他數(shù)據(jù)項(xiàng)的解析與時(shí)間的解析思路一致,只是具體項(xiàng)的具 西安理工大學(xué)本科生畢業(yè)設(shè)計(jì)(論文) 32 體解析算法不一致。 本章小結(jié) 本章主要講述了幀數(shù)據(jù)的結(jié)構(gòu),然后依據(jù)其結(jié)構(gòu),引出在接收幀數(shù)據(jù)時(shí),所需要的各個(gè)步驟。一步一步來(lái)判斷一個(gè) 幀數(shù)據(jù)是如何接收到的。之后,學(xué)習(xí)了在接收到幀數(shù)據(jù)后是如何對(duì)其進(jìn)行解析。整體掌握幀數(shù)據(jù)從接收到解析出來(lái),能夠進(jìn)行使用的整個(gè)過(guò)程。 第五章 人機(jī)交互設(shè)計(jì) 串口設(shè)備網(wǎng)絡(luò)互聯(lián)系統(tǒng)中,主要的一部分是上位機(jī)人機(jī)交互的設(shè)計(jì)。在人機(jī)交互的設(shè)計(jì)中,主要利用 VC++編譯器和 MFC 框架實(shí)現(xiàn)上層界面的設(shè)計(jì)。 VC++編譯器和 MFC 框架,為串口設(shè)備網(wǎng)絡(luò)互聯(lián)系統(tǒng)的界面開(kāi)發(fā)提供了方便。 Visual C++ 編譯器簡(jiǎn)介 Visual C++ ,簡(jiǎn)稱(chēng) VC 或者 ,是微軟推出的一款 C++編譯器,將“高級(jí)語(yǔ)言”翻譯為“機(jī)器語(yǔ)言(低級(jí)語(yǔ)言)”的程序。Visual C++是一個(gè)功能強(qiáng)大的可視化軟件開(kāi)發(fā)工具。自 1993 年Microsoft 公司推出 Visual C++ 后,隨著其新版本的不斷問(wèn)世,Visual C++已成為專(zhuān)業(yè)程序員進(jìn)行軟件開(kāi)發(fā)的首選工具。雖然微軟公司推出了 Visual C++.NET(Visual C++),但它的應(yīng)用的很大的 郭一君:串口設(shè)備遠(yuǎn)程監(jiān)控軟件設(shè)計(jì)與實(shí)現(xiàn) 33 局限性,只適用于 Windows 20xx、 Windows XP 和 Windows 。所以實(shí)際中,更多的是以 Visual C++ 為平臺(tái)。 Visual C++ 不僅是一個(gè) C++ 編譯器,而且是一個(gè)基于 Windows 操作系統(tǒng)的可視化集成開(kāi)發(fā)環(huán)境( integrated development environment, IDE)。 Visual C++ 由許多組件組成,包括編輯器、調(diào)試器以及程序向?qū)ppWizard、類(lèi)向?qū)?Class Wizard 等開(kāi)發(fā)工具。 這些組件通過(guò)一個(gè)名為 Developer Studio 的組件集成為和諧的開(kāi)發(fā)環(huán)境。 VC++應(yīng)用程序的開(kāi)發(fā)主要有兩種模式,一種是 WIN API 方式,另一種則是 MFC方式,傳統(tǒng)的 WIN API 開(kāi)發(fā)方式比較繁瑣,而 MFC 則是對(duì) WIN API再次封裝,所以 MFC 相對(duì)于 WIN API 開(kāi)發(fā)更具備效率優(yōu)勢(shì)。串口設(shè)備網(wǎng)絡(luò)互聯(lián)系統(tǒng)中,主要利用 Visual C++ 中 MFC 進(jìn)行應(yīng)用程序開(kāi)發(fā)。 MFC 借助 C++的優(yōu)勢(shì)為 Windows 開(kāi)發(fā)開(kāi)辟了一片新天地,同時(shí)也借助 ApplicationWizzard 使開(kāi)發(fā)者擺脫離了每次都必寫(xiě)基本代碼,借助 ClassWizard 和消息映射使開(kāi)發(fā)者擺脫了定義消息處理時(shí)那種混亂和冗長(zhǎng)的代碼段。另外, MFC 利用 C++的封裝功能 使開(kāi)發(fā)者擺脫 Windows 中各種句柄的困擾,只需要面對(duì) C++中的對(duì)象,這樣一來(lái)使開(kāi)發(fā)更接近開(kāi)發(fā)語(yǔ)言而遠(yuǎn)離系統(tǒng)。利用 C++的封裝性開(kāi)發(fā)者可以更容易理解和操作各種窗口對(duì)象;利用 C++的派生性開(kāi)發(fā)者可以減少開(kāi)發(fā)自定義窗口的時(shí)間和創(chuàng)造出可重用的代碼;利用虛擬性可以在必要時(shí)更好的控制窗口的活動(dòng)。而且 C++本身所具備的超越 C 語(yǔ)言的特性都可以使開(kāi)發(fā)者編寫(xiě)出更易用,更靈活的代碼。 西安理工大學(xué)本科生畢業(yè)設(shè)計(jì)(論文) 34 MFC 框架 MFC框架簡(jiǎn)介 MFC,微軟基礎(chǔ)類(lèi)( Microsoft Foundation Classes),是微軟提供的用 于在 C++環(huán)境下編寫(xiě)應(yīng)用程序的一個(gè)框架和引擎,是對(duì) API函數(shù)的專(zhuān)用 C++封裝,微軟做了大量的封裝,隱藏了許多內(nèi)部實(shí)現(xiàn),簡(jiǎn)化了開(kāi)發(fā)人員的工作量。 MFC (Microsoft Foundation Class Library)中的各種類(lèi) 相互 結(jié)合起來(lái)構(gòu)成了一個(gè)應(yīng)用程序框架,它的目的就是讓程序員在此基礎(chǔ)上來(lái)建立 Windows 下的應(yīng)用程序,這是一種相對(duì) SDK 來(lái)說(shuō) 更為簡(jiǎn)單的方法。因?yàn)榭傮w上, MFC 框架定義了應(yīng)用程序的輪廓,并提供了用戶(hù)接口的標(biāo)準(zhǔn)實(shí)現(xiàn)方法,程序員所要做的就是通過(guò)預(yù)定義的接口把具體應(yīng)用程序特有 的東西填 入這個(gè)輪廓。 Microsoft Visual C++提供了相應(yīng)的工具來(lái)完成這個(gè)工作: AppWizard 可以用來(lái)生成初步的框架文件(代碼和資源等);資源編輯器用于幫助直觀地設(shè)計(jì)用戶(hù)接 口; ClassWizard 用來(lái)協(xié)助添加代碼到框架文件;最后,編譯,則通過(guò)類(lèi)庫(kù)實(shí)現(xiàn)了應(yīng)用程序特定的邏輯。 MFC類(lèi)層次結(jié)構(gòu)圖 微軟 MFC 類(lèi)庫(kù)提供了大量的 MFC 類(lèi),開(kāi)發(fā)人員可以很方便地利用這些類(lèi)高效快速地開(kāi)發(fā)出自己的應(yīng)用程序。圖 81 為從 MFC類(lèi)庫(kù)截取的部分類(lèi)的層次結(jié)構(gòu)圖。從圖中,可以看到各種類(lèi)和控件的相互關(guān)系。 郭一君:串口設(shè)備遠(yuǎn)程監(jiān)控軟件設(shè)計(jì)與實(shí)現(xiàn) 35 圖 01: MFC 類(lèi)庫(kù)層次結(jié)構(gòu)圖(部分) 1) CWinApp 類(lèi) 每個(gè)應(yīng)用程序從類(lèi) CWinApp 派生出自己的應(yīng)用程序類(lèi),并定義一個(gè)全局的對(duì)象。該應(yīng)用程序類(lèi)包含了 Windows 下 MFC 應(yīng)用程序的初始化、運(yùn)行和結(jié)束過(guò)程?;诳蚣芙⒌膽?yīng)用程序必須有一個(gè)(且只能有一個(gè))從 CWinApp 派生的類(lèi)的對(duì)象。CWinApp 所包含的數(shù)據(jù)成員主要用于存放和控制應(yīng)用程序本身的信息。其主要的成員函數(shù)如表 91 所示: 數(shù)據(jù)成員名稱(chēng) 作用入描述 m_pszAppName 指定了應(yīng)用程序名稱(chēng) m_hInstance 標(biāo)識(shí)了應(yīng)用程序的當(dāng)前實(shí)例 m_lpCmdLine 指示一個(gè)以 NULL 結(jié)尾的字符串,指向應(yīng)用程序的命令行 m_nCmdShow 指示最初如何顯示窗口 m_pszExeName 應(yīng)用程序的模塊名稱(chēng) m_pszHelpFilePath 應(yīng)用程序的幫助文件路徑 西安理工大學(xué)本科生畢業(yè)設(shè)計(jì)(論文) 36 m_pszProfileName 應(yīng)用程序?qū)?yīng)的 .ini 文件名 表 91 CWinApp 主要成員函數(shù) 除了 CWinApp 的成員函數(shù)以外,微軟基礎(chǔ)類(lèi)庫(kù)還提供AfxGetApp 等 全局函數(shù),用于訪問(wèn)你的 CWinApp 對(duì)象以及其它全局信息 。 2) CWnd 類(lèi) CWnd 類(lèi)提供了微軟基礎(chǔ)類(lèi)庫(kù)中所有窗口類(lèi)的基本功能。CWnd 對(duì)象與 Windows 的窗口不同,但是兩者有緊密聯(lián)系。 CWnd對(duì)象是由 CWnd的構(gòu)造函數(shù)和析構(gòu)函數(shù)創(chuàng)建或銷(xiāo)毀的。另一方面,Windows 的窗口是 Windows 的一種內(nèi)部數(shù)據(jù)結(jié)構(gòu),它是由 CWnd的 Create 成員函數(shù)創(chuàng)建的,而由 CWnd 的虛擬析構(gòu)函數(shù)銷(xiāo)毀。DestroyWindow 函數(shù)銷(xiāo)毀 Windows 的窗 口,但是不銷(xiāo)毀對(duì)象。 CWnd 類(lèi)和消息映射機(jī)制隱藏了 WndProc 函數(shù)。接收到的Windows 通知消息通過(guò)消息映射被自動(dòng)發(fā)送到適當(dāng)?shù)?CWnd OnMessage 成員函數(shù)。 程序開(kāi)發(fā) 者 可以在派生 類(lèi)中重載OnMessage 成員函數(shù)以處理成員的特定消息。 使用 CWnd 類(lèi)同時(shí)還能夠?yàn)閼?yīng)用程序創(chuàng)建 Windows 的子窗口。先從 CWnd 繼承一個(gè)類(lèi),然后在派生類(lèi)中加入成員變量以保存與你的應(yīng)用程序有關(guān)的數(shù)據(jù)。在派生類(lèi)中實(shí)現(xiàn)消息處理成員函數(shù)和消息映射,以指定當(dāng)消息被發(fā)送到窗口時(shí)應(yīng)該如何動(dòng)作。 程序開(kāi)發(fā)者 可以經(jīng)過(guò)兩個(gè)步驟來(lái)創(chuàng)建一個(gè) 子窗口。首先,調(diào)用構(gòu)造函數(shù) CWnd 以創(chuàng)建一個(gè) CWnd 對(duì)象,然后調(diào)用 Create 成員函數(shù)以創(chuàng)建子窗口并將它連接到 CWnd 對(duì)象。 當(dāng)用戶(hù)關(guān)閉你的子窗口時(shí),應(yīng)銷(xiāo)毀 CWnd 對(duì)象,或者調(diào)用DestroyWindow 成員函數(shù)以清除窗口并銷(xiāo)毀它的數(shù)據(jù)結(jié)構(gòu)。 郭一君:串口設(shè)備遠(yuǎn)程監(jiān)控軟件設(shè)計(jì)與實(shí)現(xiàn) 37 在微軟基礎(chǔ)類(lèi)庫(kù)中,從 CWnd 派生了許多其它類(lèi)以提供特定的 窗 口 類(lèi) 型 。 這 些 類(lèi) 中 有 許 多 , 包 括CFrameWnd,CMDIFrameWnd,CMDIChildWnd,CView 和 CDialog,被用來(lái)進(jìn)一步派生。從 CWnd 派生的控件類(lèi),如 CButton,可以被直接使用,也可以 被進(jìn)一步派生出其它類(lèi)來(lái)。 初始化流程及消息循環(huán)機(jī)制 基于 MFC 的對(duì)話框應(yīng)用程序的初始化流程及消息循環(huán)機(jī)制的過(guò)程如圖 82 所示: 開(kāi) 始初 始 化 應(yīng) 用 程 序初 始 化 模 式 顯 示 主對(duì) 話 框處 理 消 息 消 息 是 否 為 W M _ Q U I T應(yīng) 用 程 序 是 否 處 理 了此 消 息 ?轉(zhuǎn) 送 消 息 給 窗 口 進(jìn)行 默 認(rèn) 處 理退 出 程 序是否是否主 對(duì) 話 框 接 收 消 息 圖 02: MFC 消息循環(huán)機(jī)制 由于 Windows 是一個(gè)面向消息的操作系統(tǒng),在 Windows 環(huán)境 西安理工大學(xué)本科生畢業(yè)設(shè)計(jì)(論文) 38 下很大一部分編程工作涉及消息處理。每當(dāng)發(fā)生一個(gè)事件,如擊鍵或鼠標(biāo)點(diǎn)擊,就會(huì)向應(yīng)用程序發(fā)送一個(gè)消息,然后由它來(lái)處理事件。 微軟基礎(chǔ)類(lèi)庫(kù)提供了為基于消息的編程而優(yōu)化的編程模式。在這種模式下, “消息映射 ”被用于指明哪個(gè)函數(shù)將為特定的類(lèi)處理不同的消息。消息映射包含了一個(gè)或多個(gè)宏,用以指定哪個(gè)函數(shù)處理哪個(gè)消息。 MFC 開(kāi)發(fā)應(yīng)用程序?qū)崿F(xiàn) Visual C++ 編譯器類(lèi)向?qū)Т蟠筇峁┝?MFC 應(yīng)用程序的開(kāi)發(fā)效率。利用類(lèi)向?qū)В梢苑奖愕匦陆ɑ趩挝臋n、多文檔及基于對(duì)話框的界面應(yīng)用程序。界面開(kāi)發(fā)中,各種控件可以方便的添加需要的消息響應(yīng),提供應(yīng)用程序后臺(tái)數(shù)據(jù)的處理及通訊效率。 Visual C++ 新建 MFC 應(yīng)用程序 Visual C++ 可以方便地建立 MFC 應(yīng)用程序。下面以建立基于對(duì)話框的應(yīng)用程序?yàn)槔?,詳述建?MFC 應(yīng)用程序步驟。 1) 運(yùn)行 Visual C++ 集成開(kāi)發(fā)環(huán)境。點(diǎn)擊 文件 新建,彈出新建應(yīng)用程序?qū)υ捒?,如下圖所示: 郭一君:串口設(shè)備遠(yuǎn)程監(jiān)控軟件設(shè)計(jì)與實(shí)現(xiàn) 39 2) 選擇 在新建對(duì)話框中選擇“工程”主菜單,選中“ MFC AppWizard( exe)”,在“工程名稱(chēng)”一欄中輸入相應(yīng)的工程名稱(chēng),選擇好工程相應(yīng)的位置,點(diǎn)擊“確定”按鈕,則彈出 MFC應(yīng)用程序向?qū)?duì)話框,此界面可以選擇應(yīng)用程序是基于單文檔、多文檔還是基本對(duì)話框,如下圖所示。 西安理工大學(xué)本科生畢業(yè)設(shè)計(jì)(論文) 40 3) 選擇基于對(duì)話框,點(diǎn)擊下一步,彈出應(yīng)用程序外觀設(shè)置。如下圖。應(yīng)用程序開(kāi)發(fā)這可以根據(jù)需要進(jìn)行相應(yīng)的選擇。 4) 所有選擇保存默認(rèn),點(diǎn)擊下一步。后續(xù)彈出的對(duì)話框如下所示: 郭一君:串口設(shè)備遠(yuǎn)程監(jiān)控軟件設(shè)計(jì)與實(shí)現(xiàn) 41 5) 所有選擇保存默認(rèn),點(diǎn)擊下一步。后續(xù)彈出的對(duì)話框如下所示。該對(duì)話框顯示了應(yīng)用程序創(chuàng)建的 MFC 類(lèi)和文件。 6) 點(diǎn)擊完成,則新建基于對(duì)話框的應(yīng)用程序成功。如下圖所示。用戶(hù)可以根據(jù)需要在該界面拖動(dòng)控件布局成自己需要的界面程序。 西安理工大學(xué)本科生畢業(yè)設(shè)計(jì)(論文) 42 消息響應(yīng)函數(shù)添加與實(shí)現(xiàn) 利用 Visual C++ 的類(lèi)向?qū)?,快速地?duì)布局在界面的控件、對(duì)話框等添加消息響應(yīng)函數(shù)。也可以方便的添加類(lèi)的成員變量。 控件消息響應(yīng)是 Visual C++開(kāi)發(fā)中最常用到的一種響應(yīng)機(jī)制,其消息響應(yīng)添加步驟如下: 1) 設(shè)置控件 ID 和文本標(biāo)題 以按鈕控件為例,在右側(cè)功率欄中,把按鈕控件拖動(dòng)到窗口界面中。選中按鈕控件。點(diǎn)擊右鍵,選中屬性,彈出如下對(duì)話框按鈕控件屬性對(duì)話框。把控件設(shè)置好響應(yīng)的控件 ID 和標(biāo)題。如下圖所示。點(diǎn)擊關(guān)閉 2) 利用類(lèi)向?qū)砑酉㈨憫?yīng)函數(shù)。 在 Visual C++ 菜單欄中,點(diǎn)擊“查看” 建立類(lèi)向?qū)В蛑苯印?Ctrl+W”快捷鍵,彈出
點(diǎn)擊復(fù)制文檔內(nèi)容
研究報(bào)告相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1