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

正文內(nèi)容

在線溫度監(jiān)控系統(tǒng)上位機軟件設(shè)計_畢業(yè)設(shè)計(論文)-閱讀頁

2025-07-27 14:04本頁面
  

【正文】 只需將其設(shè)置成與所用計算機相同的分辨率即可) 軟件使用方法 : 運行軟件, 打開該界面后, 選擇通訊簿旁邊有一個指示燈, 指示燈原本為灰色,點擊開始通訊按鈕, 若 指示 燈變?yōu)榫G色,則說明通訊端口打開,計算機串口可以進行正常通訊,接收下位機采集來的溫度數(shù)據(jù) , 并且,這些 數(shù)據(jù)將會顯示在數(shù)據(jù)表里 點擊結(jié)束通訊時,指示燈又會變?yōu)榧t色 。當要退出系統(tǒng)西安工程大學本科畢業(yè)設(shè)計(論文) 17 時,只需點擊右上角的退出按鈕即可。一個完整的通信系統(tǒng) 包括發(fā)送端、接收端、轉(zhuǎn)換數(shù)據(jù)的接口 以 及傳送數(shù)據(jù)的實際信道或媒體?;ハ嘟粨Q數(shù)據(jù)。 常用的串行通信有兩種,并且 串行通信端口( Serial Communication Port)在系統(tǒng)控制的范疇中一直占據(jù)著極其重要的地位,它不僅沒有因為時代的進步而遭淘汰,反而在規(guī)格上越來越完善,應(yīng)用也越來越廣泛。當然,它的重要性還不止如此。 RS232 的通信端口是每臺計算機上的必要配備,通常含有 COM1 與 COM2兩個端口。新一代計算機均以 9 引腳的接頭接出所有的 RS232 通信端口。通常與計算機連接的設(shè)備,最簡單的通信接口就是 RS232,不僅實際操作簡單,而且價格上也便宜很多。 圖 41 是RS232 標準接頭 ]8[ 。 西安工程大學本科畢業(yè)設(shè)計(論文) 18 圖 42 RS232 串口針腳標號 RS232 各針腳功能如下 表 41 所示。這種組件的特點是能使數(shù)個單選按鈕成為一組,同組的單選按鈕之間具有互斥性,只能選一個。 即如果為 1,則是一列(如圖 43a) ,如果是 2,則是兩列(如圖 43b) 。 Itemlndex 是設(shè)計時使用的,運行時由用戶的選擇而自動改變它的值。它含有一個 Strings 對象,用來設(shè)置各個單選按鈕標題。 Memo 組件 是一個標準的 Windows 多行編輯組件。 在需要多行輸入的情況下 ,使用 Memo 組件是比較合適的選擇 除此之外, ScrollBar的使用,也使得 Memo 組件中的數(shù)據(jù)具有容易查看的效果。 圖 44 memo 組件外觀 1) Lines 屬性:可以訪問多行文本中的每一行。 本屬性設(shè)定了以下 4 個用戶可選值: ssNone—不加滾動條; ssHorizontal—加 上水平滾動條; ssVertical—加上垂直滾動條; ssBboth—水平和垂直滾動條都加上。 即當此屬性設(shè)為 True,按下 “ Enter” 鍵就是換行。 4) WantTabs屬性:如果 WantTabs 屬性設(shè)為 True,每按一次 “ Tab” 鍵,將使光標在多行文本編輯器中移動一個制表位。 5) WordWrap 屬性:如果此屬性設(shè)置為 True,當輸入的文字到了多行文本編輯器的右邊界時,文字自動換行。 6) 常用屬性如下表 43 所示。 Label 組件 是專門用來顯示文字和數(shù)字的組件。由于通常被用來做標注,事件的使用就不會太頻繁。 圖 45 Lable 外觀 常用屬性設(shè)置如表 44 所示。 下 面將分別介紹這兩種方式。通過使用 ActiveX 控件,可以很快的在網(wǎng)址、臺式應(yīng)用程序、以及開發(fā)工具中加入特殊的功能。 它可以跟支持ActiveX 控件的任何主機應(yīng)用程序函數(shù)結(jié)合并擴展函數(shù)的功能,例如 C++Builder、Delphi、 Visual Basic、 InterExplorer 和 Netscape Navigator 等。 例如, C++Builder 跟幾種 ActiveX 控件結(jié)合在一起,包括圖表、電子表格和圖片控件等。 ActiveX控件也可以在網(wǎng)上發(fā)布 ,并可以被 HTML文件引用和在支 持 ActiveX的網(wǎng)絡(luò)瀏覽器中顯示。 1) 捆綁 VCL 類庫的 ActiveX 控件 通過綁定 VCL 類,用戶可以把存在的組件轉(zhuǎn)化為 ActiveX 控件;或者創(chuàng)建一個新控件,并在本地對它們進行測試,然后把它們轉(zhuǎn)化成 ActiveX控件。 2) ActiveForm ActiveForm允許用戶使用窗體編輯器來創(chuàng)建一個非常精致的窗體,它的行為就像一個對話框或一個完整的應(yīng)用程序。 Active 窗體通常要在網(wǎng)上發(fā)布。 并且也存在被人利用的隱患,網(wǎng)頁中的惡意代碼往往就是利用這些控件編寫的小程序,只要打開網(wǎng)頁就會被運行。 西安工程大學本科畢業(yè)設(shè)計(論文) 22 API 函數(shù): API 是 Application Programming Interface 的縮寫,也就是應(yīng)用程序調(diào)用系統(tǒng)功能的接口。 用戶的每個動作都會引發(fā)一個或幾個函數(shù)的運行以告訴 Windows 發(fā)生了什么 。 WindowsAPI 主要包括系統(tǒng)定義的函數(shù)、消息及與之相關(guān)的數(shù)據(jù)類型。就連操作系統(tǒng)本身也是由這些 API 函數(shù)所組成。 不管是哪種快速開發(fā)工具,最后 都會調(diào)用到 API,由 API 執(zhí)行操作。 對于 API 的聲明,該函數(shù)包含在位于系統(tǒng)目錄下的 DLL 文件中,可以自己輸入 API 函數(shù)的聲明 , 要想在你的工程中聲明 API 函數(shù),只需運行 API Text Viewer,打開 (或 .MDB 如果已經(jīng)把它轉(zhuǎn)換成了數(shù)據(jù)庫的話 ,這樣可以加快速度 ),選擇 “ 聲明 ” ,找到所需函數(shù),點擊 “ 添加 (Add)” 并 “ 復(fù)制 (Copy)” ,然后粘貼到工程里。 由于 C++ Builder已經(jīng)將 Win32 API 聲明進去了,因此在 C++ Builder 里面使用 API 時只要直接引用即可。 綜合這兩種方法的優(yōu)缺點考慮, 本次畢設(shè) 最終選擇 通過調(diào)用 API 函數(shù)來實現(xiàn)串口通信的問題。 1) CreatFile:用創(chuàng)建文件函數(shù)打開通信端口 ; 2) CloseHandle:關(guān)閉通信端口 ; 西安工程大學本科畢業(yè)設(shè)計(論文) 23 3) GetCommState:獲得計算機串行端口的設(shè)置參數(shù) ; 4) SetCommState:設(shè)置計算機串行端口的參數(shù) ; 5)WriteFile:用寫文件函數(shù)將數(shù)據(jù)由串行端口送出 ; 6) ReadFile:用讀文件函數(shù)獲取送到串行端口的數(shù) 據(jù) ; 7) ClearCommError:清除串行端口的錯誤,并取得信息 ; 8) PurgeComm:清除串行端口上的緩沖區(qū) ; 實現(xiàn)過程: 在 Win32 下,對串口的操作就如同對文件一樣打開或關(guān)閉,對串行數(shù)據(jù)的讀寫可在用戶定義的讀寫緩沖區(qū)中進行,具體過程參見圖 46 所示。串行通信前,要調(diào)用 CreatFile()函數(shù)打開串行端口,當通信端口成功打開后,就返回一個串口句柄( Handle),以后只要使用這個句柄就可以對通信端口操作。 配置串口通過改變數(shù)據(jù)結(jié)構(gòu) —設(shè)備控制塊 DCB( Device Control Block)來實現(xiàn)。我們可以使用 GetCommState 函數(shù)獲得串口的配置,該函數(shù)把當前配置填充到 DCB 結(jié)構(gòu)中。 點擊開始通訊按鈕便開始接收資料,因此 雙擊開始通訊按鈕, 加入如下程序代碼 : void __fastcall TForm1::Button1Click(TObject *Sender) { char *ComNo。 String Temp。 //轉(zhuǎn)換至指針類型 Char ComNo = ()。 if (hComm == INVALID_HANDLE_VALUE) // 如果通信端口未打開 { MessageBox(0, 打開通信端口錯誤 !!,Comm Error,MB_OK)。 } //將 dcb 地址傳入,以取得通信參數(shù) GetCommState(hComm,amp。 // 得知目前通信端口的狀態(tài) = CBR_9600 // 設(shè)置波特率為 9600 = 8。 // Parity 為 None 西安工程大學本科畢業(yè)設(shè)計(論文) 25 = ONESTOPBIT。dcb)) { // 設(shè)置通信端口的狀態(tài) MessageBox (0, 通信端口設(shè)置錯誤 !!!,Set Error,MB_OK)。 return。當有通信事件產(chǎn)生時,可使用函數(shù) ReadFile()和 WriteFile()直接對串口緩沖區(qū)進行讀寫操作。在實際使用中,當有數(shù)據(jù)到達通信端口時,應(yīng)主動將數(shù)據(jù)接收下來。 在發(fā)送數(shù)據(jù)時,只要在發(fā)送數(shù)據(jù)的 mSend_Data 控件中,輸入要發(fā)送的信息,然后按回車鍵即能發(fā)送 。 char *SendData。 unsigned long lrc,BS。 //檢查 Handle 值 Temp = mSendText。 //字符串轉(zhuǎn)換 //取得發(fā)送的字符串數(shù) BS = ()。 //也可以使用此種方式取得字符串長度 //實際的發(fā)送動作 WriteFile(hComm,SendData,BS, amp。 // 送出數(shù)據(jù) } 在接收資料按鈕下加入如下程序代碼: void __fastcall TForm1::Button4Click(TObject *Sender) { String Temp。 DWORD nBytesRead, dwEvent, dwError。 //取得狀態(tài) ClearCommError(hComm,amp。cs)。 // 清除通信端口數(shù)據(jù) return。nBytesRead,NULL)。\039。 } 3) 關(guān)閉串口。關(guān)閉串口 函數(shù)的原型是 BOOL CloseHandle( HANDLE hObject);其中 hObject 參數(shù)為 CreatFile()返回的端口句柄。雙擊 結(jié)束通訊按鈕 ,為其 加入如下程序代碼: 西安工程大學本科畢業(yè)設(shè)計(論文) 27 void __fastcall TForm1::Button2Click(TObject *Sender) { if (hComm!=INVALID_HANDLE_VALUE) CloseHandle(hComm)。 } 4) 另外還要 聲明文件句柄變 量,在單元文件聲明部分添加如下一條語句: HANDLE hComm; 此模塊界面的具體設(shè)計: 串口用于接收溫度數(shù)據(jù),因此,串口調(diào)通至關(guān)重要。 調(diào)節(jié)串口界面如下圖 4—7 所示。點擊開始通訊按鈕,則系統(tǒng)開始接收下位機傳來的數(shù)據(jù)。 由于我做的只是上位機,為了調(diào)試方便,我做了自發(fā)自收的設(shè)計,即一個Memo 用于顯示輸入的數(shù)據(jù),而 另一個則用于顯示接收的數(shù)據(jù)。但要注意的是,如果 輸入一次內(nèi)容,但 連續(xù)按兩次發(fā)送鍵,再按一次接收鍵,則會在接收資料里顯示兩遍接收到的內(nèi)容 , 即出現(xiàn) 如圖 48 所示 情況。數(shù)據(jù)庫存放數(shù)據(jù)是按數(shù)據(jù)所提供的數(shù)據(jù)模式存放的,具有集成與共享的的特點。 數(shù)據(jù)成組出現(xiàn),每組有三個數(shù)據(jù),分別為溫度、時間和結(jié)點。 以下是數(shù)據(jù) 表的 建立方法 。 然后 是 保存 過程 , 保存文件的 名稱 應(yīng)該是 頭文件為 “ .db” 的 ,這一點很重要 。在開始中打開 BDE Administrator,通過菜單命令 Object|New 打開 New Database Alias 對話框, 在此對話框中的 Database Driver Name 項中選擇MSACCESS,將發(fā)現(xiàn)在 Database 窗口中增加了一個新節(jié)點,修改 別名為TemperatureData,選中該名稱,單擊右鍵,選 Apply 命令,在出現(xiàn)的對話框中選OK,便完成了這項工作。 圖 410 建立別名 最后 還需要 通過能夠感知數(shù)據(jù)的 DBGrid 組件 才能 連接到它 。名稱取默認值( Table StatusBar1)。 數(shù)據(jù)庫存儲 的溫度 數(shù)據(jù)如下圖 411 所示 。因為要求將采集來的溫度和時間顯示在坐標曲線上,時間在 X 軸上,溫度在 Y 軸上,因此要用到 C++builder 中的 SimuCurves 組件, 并且還需要一個 Button 組件。不同節(jié)點的溫度曲線顏色也不同,在節(jié)點下面用 Lable 組件將每個節(jié)點的曲線顏色進行標注,這樣就可以通過顏色來辨別是哪個節(jié)點的溫度曲線。 組件介紹: Button 組件是使用率最高的組件,用于提供一個給系統(tǒng)用戶操作用的按鈕,在組件面板中的位置及外觀如圖 4—12 所示。 西安工程大學本
點擊復(fù)制文檔內(nèi)容
研究報告相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1