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

正文內(nèi)容

專拉力試驗機無線網(wǎng)絡(luò)的pc軟件設(shè)計_畢業(yè)設(shè)計論文(參考版)

2024-08-15 21:50本頁面
  

【正文】 串 口助手是本次南京工程學(xué)院自動化學(xué)院本科畢業(yè)設(shè)計(論文 ) 40 調(diào)試的主要工具軟件,具體界面下圖 圖 串口調(diào)試助。 圖 VSPD 界面 串口調(diào)試助手軟件 串口調(diào)試助手是串口調(diào)試相關(guān)工具,有多個版本。從界面可以看出本機沒有物理的串口,成功建立的串口對為 COM1和 COM2,從中還可以看出 COM2串口發(fā)送數(shù)據(jù)時的串口參數(shù)設(shè)置。下載后進行安裝,啟動運行 VSPD 并添加虛擬串口對,則完成虛擬串口試驗環(huán)境的建立。 虛擬串口軟件 首先,現(xiàn)在的筆記本電腦上很少配置串口,如果直接用串口助手將無法進行“打開串口”的操作,為此必須先為筆記本安裝一個虛擬串口的軟件。定位到錯誤后加以改正。用假設(shè)來解釋所有的原始測試結(jié)果,如果能解釋,這一則假設(shè)得以證實,也就找出錯誤;否則,要么是假設(shè)不完備或不成立,要么有問題。分析已有的數(shù)據(jù),排除可能和彼此矛盾的原因。 ( 3) 歸納法 歸納法就是從測試所暴露的問題出發(fā),收集所有正確或不正確的數(shù)分析它們之間的關(guān)系,提出假象的錯誤原因,用這些數(shù)據(jù)來證明或反駁,從而定位錯誤所在。這種方法適合于小型程序,對于大規(guī)模程序于其需要回溯的路徑太多而變得不可操作。目前常用的調(diào)試方法有如下幾種。這時候軟件調(diào)試至關(guān)重要。這類錯誤多半是由于書寫錯誤,數(shù)據(jù)類型不一致等,往往很容易發(fā)現(xiàn)。南京工程學(xué)院自動化學(xué)院本科畢業(yè)設(shè)計(論文 ) 38 第四章 軟件功能的實現(xiàn) 軟件調(diào)試方法 在程序編寫時,由于書寫或邏輯上的疏忽,程序難免會存在或多或少的 BUG。) 南京工程學(xué)院自動化學(xué)院本科畢業(yè)設(shè)計(論文 ) 37 信模塊的實現(xiàn),人機交互界面的實現(xiàn),拉力曲線繪制模塊的實現(xiàn),數(shù)據(jù)儲存模塊的實現(xiàn)對其進行了細致的分析,給出了大部分 功能實現(xiàn)的流程圖。 ( * (char *)(data+1)==39。) amp。 Y ( * (char *)(data)==39。 m_current=39。139。) N FilePath=。 ( * (char *)(data+1)==39。) amp。這四個小結(jié),分別從串口通開始 定義一個數(shù)組【 180*12*4】 結(jié)束 數(shù)組轉(zhuǎn)換成 Cstring 變量 確定數(shù)據(jù)長度為 Length N Y ( * (char *)(data)==39。 運用 C++基本的 CFile 類,結(jié)合以上所介紹的知識,可以比較容易的完成數(shù)據(jù)的文件存儲,具體的文件儲存流程圖如下(圖 ): 南京工程學(xué)院自動化學(xué)院本科畢業(yè)設(shè)計(論文 ) 36 圖 數(shù)據(jù)存儲的流程圖 說明: 本軟件是運用的數(shù)組實現(xiàn)對數(shù)據(jù)的儲存,每秒 12 個數(shù)據(jù),試驗時間大概為三分鐘,每個數(shù)據(jù)占四個字節(jié),所以數(shù)組的大小即為 [180*12*4] 此流程圖中值給出了兩個保存路徑,分別對應(yīng)兩臺拉力設(shè)備,更多臺的設(shè)備可以依此類推。如果下一個參數(shù)為 NULL,那么一定要傳入這個參數(shù)。 DWORD nNumberOfBytesToRead,指定要讀取的字節(jié)數(shù)。 各參數(shù)的意義是: HANDLE hFile, 需要讀入數(shù)據(jù)的 文件指針 ,這個指針指向的文件必須是GENERIC_READ 訪問屬性的文件。調(diào)用成功 ,返回非 0, 調(diào)用不成功 ,返回為 0。從文件中讀出數(shù)據(jù)。可以用 VarType 函數(shù)或 TypeName 函數(shù) 來決定如何處理 Variant 中的數(shù)據(jù)。 Variant 是一種特殊的 數(shù)據(jù)類型 ,除了定長 String 數(shù)據(jù)及用戶定義類型外,可以包含任何種類的數(shù)據(jù)。 可以用 Variant 數(shù)據(jù)類型來替換任何數(shù)據(jù)類型,這樣會更有適應(yīng)性。 Variant Variant 數(shù)據(jù)類型是所有沒被顯式聲明(用如 Dim、 Private、 Public 或 Static 等語句)為其他類型變量的數(shù)據(jù)類型。 (_T(The total is %d),total)。它們很大程度上簡化了 MFC 中的許多操作,使得 MFC 在做字符串操作的時候方便了很多。下面介紹數(shù)據(jù)儲存常用到的兩種變量和一個函數(shù)。從 CFile 類派生的CStdioFile 類用于操作文本文件,派生了 CMemFile 用于操作內(nèi)存文件。 有一個弊端就是,拉力試驗時數(shù)據(jù)不可能從零開始,因為裝夾試件時已經(jīng)有一定的壓力產(chǎn)生,但本次所用的繪圖的方法是肯定從坐標零點開始的,所以存在小小的問題。 繪圖的方法是先將畫筆移到坐標原點處,然后用 LineTo 函數(shù)將各點的練成折線,由于點的密度非常大(一秒 12 個數(shù)據(jù)),所以得到的肯定是一條平滑的曲線。 flag_liu 和 flag_ya 分別代表了兩臺設(shè)備, 他們繪圖的唯一不同點就是數(shù)據(jù)保存的位置不同。239。 FilePath=。 m_current=39。在設(shè)備坐標( Device Coordinate)中 用 MoveTo 函數(shù)來確定坐標原點,然后去 LineTo 函數(shù)將所有的點連起來,配合畫筆就畫出了近似曲線的折線。 [i]/9是 Y 坐標 位置。 這個 函數(shù)調(diào)用 完畢,當(dāng)前位置變成 x,y,函數(shù)實例如下: pDCLineTo(+(1*i/7),[i]/9)。 LineTo 函數(shù) LineTo 是 用當(dāng)前畫筆畫一條線,從當(dāng)前位置連到一個指定的點。 MoveTo 函數(shù) MoveTo 函數(shù)的功能是 將 CP 移到 (x, y),函數(shù)實例如下: pDCMoveTo(,)。函數(shù)原型 如下 : int ReleaseDC(HWND hWnd, HDC hdc); hWnd:指向要釋放的設(shè)備上下文環(huán)境所在的窗口的句柄。它只釋放公用的和設(shè)備上下文環(huán)境,對于類或私有的則無效。 ReleaseDC 函數(shù) 函數(shù)功能:函數(shù)釋放 設(shè)備上下文 環(huán)境( DC)供其他應(yīng)用程序使用。 PS_INSIDEFRAME: 由橢圓、矩形、圓角矩形、餅圖以 及弦等生成的封閉對象框時,畫線寬度向內(nèi)擴展。 南京工程學(xué)院自動化學(xué)院本科畢業(yè)設(shè)計(論文 ) 32 PS_DASHDOTDOT: 畫筆畫出的是點 點 劃線( nWidth 必須不大于 1) 。 PS_DOT: 畫筆畫出的是點線( nWidth 必須不大于 1) 。 nWidth Long: 以邏輯單位表示的畫筆的寬度 crColor Long: 畫筆的 RGB 顏 色 nPenStyle Long 指定畫筆樣式,可以是下述常數(shù)之一 : PS_SOLID: 畫筆畫出的是實線 。 一旦不再需要畫筆,記得用 DeleteObject 函數(shù)將其刪除 。這三種都是 BYTE型的,取值范圍是 0~255。 其中,第一個參數(shù)指定了筆的線型(實線、點線、虛線等);第二個參數(shù)指筆的線寬;第三個參數(shù)指筆的顏色,這個參數(shù)是 COLCRREF 類型,利用 RGB 這個宏可以構(gòu)建這種類型的值。 拉力曲線的繪制 繪圖用到的類與函數(shù) CPen 類 MFC 提供了 CPen 來創(chuàng)建畫筆對象,該類 封裝了畫筆相關(guān)的操作。在相應(yīng)的小心響應(yīng)函數(shù)中加上處理函數(shù)即可完成預(yù)期的功能 經(jīng)過上面幾步,基本完成了主體對話框的設(shè)計,但是這 只是 上位機軟件設(shè)計中的一部分。 ( 3) Butten 控件 Butten控件是使用較為頻繁的控件之一。主要 sort屬性要設(shè)置為 FALSE 否則下拉菜單中德內(nèi)容將按照名稱順序排列。使用過程中可以為 Combo Box 控件添加 SelChange 消息響應(yīng)函數(shù),來執(zhí)行所需的操作。 ( 2) Combo Box控件 該控件提供用戶下拉菜單式的選擇窗口。包括對話框中所顯示內(nèi)容的字體顏色,對話框的底色,以及對話框的使能控制。對于結(jié)果顯示窗口設(shè)置屬性為只讀。 南京工程學(xué)院自動化學(xué)院本科畢業(yè)設(shè)計(論文 ) 30 第四步:主體界面設(shè)置好后,便開始為控件添加代碼(包括設(shè)置控件屬性代碼,控件消息響應(yīng)函數(shù)代碼)。包括測試結(jié)果顯示編輯框, Butten按鈕控件,靜態(tài)文本控件等。(注:有電腦沒法添加此控件的,需要打開 windows的 CMD窗口注冊一下此控件。打 開工程,一次點擊項目 類向?qū)? 添加類 ActiveX 控件中的 MFC類 選擇( Microsoft Communications Control, version ;)選中后,再分別將要使用的類添加到工程中。在本上位機軟件中用到了 MSComm 控件。刪除上面的 STATIC控件和確定取消按鈕。 主體界面是上位機軟件的主體顯示窗口,包含:系統(tǒng)標題、 數(shù)據(jù) 顯示區(qū)域、圖形 顯示區(qū)域、用于操作區(qū)域(包括命令按鈕, 串口參數(shù)設(shè)置) 、附加功能顯示區(qū)域 (包括各種命令按鈕) , 本次上位軟件的主界面 如圖 。操作命令按鈕名稱 要易懂,布局合理。 (7)形式與內(nèi)容的統(tǒng)一 設(shè)計界面時將美的原則和實用性相結(jié)合,合理利用顏色,圖像和顯示效果來達成內(nèi)容與形式的統(tǒng)一。同時,合理使用窗體控件之間以及控件四周的空白區(qū)域, 有助于突出元素和改善可用性。在確定設(shè)計思路時,要堅持用一種風(fēng)格貫穿整個應(yīng)用程序的始終,完成整個程序的設(shè)計。 (4)界面一致性 為體現(xiàn)整個程序的協(xié)調(diào)性,不影響應(yīng)用程序的可用性,應(yīng)在程序中保持界面的一致性。 (3)合理安排控件位置 將控件適當(dāng)分組,把功能相近或密切相關(guān)的控件劃為一個邏輯組,放在一起,便于操作。 (2)操作通用性 根據(jù)程序功能,將所需要的操作分割成不同的界面,為用戶提供菜單,命令南京工程學(xué)院自動化學(xué)院本科畢業(yè)設(shè)計(論文 ) 28 按鈕,組合框,對話框等易于使用的界面控件。另一方面,機器向人傳遞的信息必須準確,不致引起誤解和混亂。程序設(shè)計時要考慮界面中各種必需的元素,不同的元素之間的重要性和相互之間的聯(lián)系,在屏幕上將顏色,文字,控件,框架等合理組合,一般遵循以下幾條原則 : (l)通信功能作為界面設(shè)計的核心 人機界面的關(guān)鍵是使人與 計算機之間能夠準確的交流信息。 人機交互界面的設(shè)計 人機界面 (Human 一 Machine Interface)是指人和機器進行交互的操作方式, 即用戶與機器相互傳遞信息的媒介,其中包括信 息的輸入和輸出。其開發(fā)的過程為以下兩個步驟: 南京工程學(xué)院自動化學(xué)院本科畢業(yè)設(shè)計(論文 ) 27 步驟 1:添加串口事件消息響應(yīng)處理函數(shù),實現(xiàn) MSComm 控件的消息機制建立。當(dāng)串口接收到數(shù)據(jù)時,則發(fā)生接收事件并發(fā)出消息, Windows 系統(tǒng)的消息機制是應(yīng)用程序能響應(yīng)消息,即自動調(diào)用消息的響應(yīng)函數(shù)并完成數(shù)據(jù)的 處理。至于其他的串口參數(shù)(奇偶校驗類型、停止位數(shù)、數(shù)據(jù)位數(shù))在本軟件中不太用得到就沒放在對話框上,用的是串口控件默認的參數(shù),如遇特殊情況可在程序中更改。具體代碼見附件。 //聲明 m_Comm變 量為 CMSComm類型 南京工程學(xué)院自動化學(xué)院本科畢業(yè)設(shè)計(論文 ) 26 另外需要使用 Visual C++類向?qū)ё詣觿?chuàng)建靜態(tài)文本、按鈕和編輯框的關(guān)聯(lián)成員變量,如圖 圖 控件成員變量聲明 串口初始化程序的開發(fā) 在“ ClassView”中,單擊“ CommDlg”類名前的“ +”,展開該類,找到OnInitDialog()并雙擊 OnInitDialog(),則打開 文件并顯示出該函數(shù) CommDlg::OnInitDialog() 的定義(函數(shù)名和函數(shù)體)。 //通信波特率 CComboBox m_。 在主界面對話框的頭文件 中聲明這些變量。當(dāng)接收緩存區(qū)中的字符數(shù)達到該閾值時, MSComm 控件就會產(chǎn)生 OnComm 時間,并且 CommEvent 屬性會被設(shè)置為 ComEvReceive,即接收事件。使用如下函數(shù)來操作該屬性: 南京工程學(xué)院自動化學(xué)院本科畢業(yè)設(shè)計(論文 ) 24 short GetInBufferCount(); //獲取當(dāng)前輸入緩存區(qū)中待讀取數(shù)據(jù)的個數(shù) void SetInBufferCount( short nNewValue); //設(shè)置當(dāng)前輸入緩沖區(qū)代讀取數(shù)據(jù)的個數(shù) 使用 SetInBufferCount()函數(shù),參數(shù) nNewValue 設(shè)為 0 時,可將緩沖區(qū)清空,除 0 外的參數(shù)都有可能導(dǎo)致函數(shù)出錯。使用如下函數(shù)來操作該屬性: void SetInBufferSize( short nNewValue); //設(shè)置輸入緩存區(qū)的大小 short GetInBufferSize(); //讀取輸入緩沖區(qū)的大小設(shè)置值 該屬性的默認值為 ,即輸入緩存區(qū)可緩存 1024字節(jié)數(shù)據(jù) 。使用如下的函數(shù)操作該屬性: v
點擊復(fù)制文檔內(nèi)容
黨政相關(guān)相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1