計算機軟件畢業(yè)論文開題報告范文
開題報告是畢業(yè)生在完成文獻調研后寫成的關于學位論文選題與如何實施的論述性報告,下面是小編搜集整理的計算機軟件畢業(yè)論文開題報告范文,供大家閱讀參考。
論文(設計)名稱:通用測控系統——串口通訊庫
一、研究或設計的目的和意義:
隨著計算機系統的應用和微機網絡的發(fā)展,通信功能越來越顯的重要.這里所說的通信是指計算機與外界的信息交換.因此,通信既包括計算機與外部設備之間,也包括計算機和計算機之間的信息交換.由于串行通信是在一根傳輸線上一位一位的傳送信息,所用的傳輸線少,并且可以借助現成的電話網進行信息傳送,因此,特別適合于遠距離傳輸.
現今,串口通訊技術在工業(yè)控制系統中被廣泛的應用,所以確保在串口通信過程中,傳送信息的可靠和穩(wěn)定十分重要。本課程設計的目的是把串口通訊庫封裝成動態(tài)鏈接庫的形式,便于串口通信庫的多種形式的調用和存放;并且在動態(tài)鏈接庫中添加一些通信協議,使其在傳送信息時,更加安全、可靠和穩(wěn)定,最大限度的保證信息的完整性不受外界的干擾。
二、研究或設計的國內外現狀和發(fā)展趨勢:
測控系統的基本任務是借助專門的傳感器感知對象信息并傳輸到系統處理器,在系統處理器中,通過信號處理方法對對象信息進行處理與數據分析,得到控制對象的有效狀態(tài)信息和測試結果,進而將這些對象的控制信息傳輸給控制環(huán)節(jié)進行對象的行為控制,并將測試結果通過顯示裝置輸出。實現測控系統所涉及的感知技術、通信技術、控制技術、處理技術以及軟件集成技術都是測控技術的重要內容。
近年來出現的各類現代測控系統遍及社會的方方面面,從衛(wèi)星發(fā)射、定姿定位、遠洋測量船數據采集的大型現代測控系統,到無線控制玩具車運動的小型測控系統,無不涉及現代測控技術的感知系統、處理技術、通信技術我控制技術,因此學習信息獲取、信息傳輸、信息處理和信息利用為基礎的現代測控技術方法和工具,對研究、設計和開發(fā)各種類型的現代測控系統是十分必要的。
將計算機、高檔外設和通信線路等硬件資源以及大型數據庫、程序、數據、文件等軟件資源納入測控網絡,可實現測控志愿的共享。同時,通過組建網絡化測控系統增加系統冗余度的方法,可以提高測控系統的可靠性,便于測控系統的擴展和變動。由計算機和工作站作為節(jié)點的網絡系統就是一種現代網絡測控系統,計算機已成為現代測控系統的核心。
以計算機串口通訊庫為基礎的現代測控系統已成為工業(yè)測控系統的重要組成部分。利用RS232-RS485進行數據信號的采集和傳遞是VC編程的又一大熱點。串口通訊在通訊軟件重有著十分廣泛的應用。如電話、傳真、視頻和各種控制等。在各種開發(fā)工具中間,VC由于功能強大和靈活,同時也得到了Microsoft的最大支持,所以在一般進行涉及硬件操作的通訊編程重,大都推薦使用VC作為開發(fā)工具。然而工業(yè)控制串口通訊這個又不同于一般的串口通訊程序,因為控制外圍設備傳送的大都是十六進制數據(BYTE類型),所以,為了提高程序的運行穩(wěn)定性,我們在編寫程序進行通訊時可以不考慮傳送BYTE類型數據的工作。
串口通訊目前流行的方法大概有兩種:一是利用Microsoft提供的CMSCOMM控件進行通訊,不過現在很多程序員都覺應該放棄這種方式。二是利用WINAPI函數進行編程,這種編程的難度最高,要求你要掌握很多的API函數。三是利用現在網絡上面提供的一些串口通訊控件進行編寫,比如CSerial類等。
三、主要研究或設計內容,需要解決的關鍵問題和思路:
1.API串口通信
串行端口是系統資源的一部分,其本質是作為CPU和串行設備間的編碼轉換器。當數據從 CPU經過串行端口發(fā)送出去時,字節(jié)數據轉換為串行的位(Bit); 接收數據時,串行的位被轉換為字節(jié)數據。應用程序要使用串口進行通信,必須在使用之前向操作系統提出資源申請要求(即打開串口),通信完成后再釋放資源(即關閉串口)。串行通信一般可以分為同步和異步兩種操作方式。所謂同步方式是指在串口的接收緩沖區(qū)中讀取規(guī)定數目的數據,直到規(guī)定數目的數據全部被讀出或設定的超時時間已到才返回。如果規(guī)定的待讀取數據量大且設定的超時時間也較長,而接收緩沖區(qū)較小,則可能引起線程阻塞。而異步方式是利用Windows的多線程結構,讓串口的讀寫操作在后臺進行,而應用程序的其他部分在前臺執(zhí)行。.
2.動態(tài)鏈接庫
把制作好的串口通訊庫封裝成動態(tài)連庫。通過使用 DLL,程序可以實現模塊化,由相對獨立的組件組成。例如,一個計帳程序可以按模塊來銷售?梢栽谶\行時將各個模塊加載到主程序中(如果安裝了相應模塊)。因為模塊是彼此獨立的,所以程序的加載速度更快,而且模塊只在相應的功能被請求時才加載。
此外,可以更為容易地將更新應用于各個模塊,而不會影響該程序的其他部分。例如,您有一個大型網絡游戲,如果把整個數百MB甚至數GB的游戲的代碼都放在一個應用程序里,日后的修改工作將會十分費時,而如果把不同功能的代碼分別放在數個動態(tài)鏈接庫(DLL)中,您無需重新生成或安裝整個程序就可以應用更新。
3.數據庫封裝
數據庫封裝一般有三種格式:靜態(tài)連接庫、動態(tài)連接庫、和com組件。
1)區(qū)別:
(1)靜態(tài)連接庫作為目標代碼的一部分被鏈接。
(2)動態(tài)連接庫和目標代碼是兩個部分。
(3)COM組件通過在注冊表中注冊動態(tài)庫的位置和接口進行調用。
2)優(yōu)缺點:
(1)靜態(tài)缺點:使目標程序體積增大,不太靈活。
(2)動態(tài)鏈接庫優(yōu)點:使程序模塊化,只要保證接口函數不變,更改DLL內部實現的細節(jié),不會導致調用失敗,不過不能解決引用計數等題 。
(3)COM很好的解決了DLL不能解決的一些問題。
3)DLL與COM的區(qū)別:
COM英文為Component Object Model(組件對象模型),是微軟生產軟件組件的標準。它是構造二進制兼容軟件組件的規(guī)范,不管組件應用何種語言編寫只要遵循com規(guī)范就可以相互直接通信。提出com規(guī)范主要是為了滿足:
(1)程序的快速開發(fā),可以將一個大型的工程分成若干個com組件同時開發(fā)。
(2)可以動態(tài)的插入或卸載com組件。
(3)可以隱藏或封裝com組件內部的實現細節(jié)。 com組件可以由不同的語言進行編寫,但com組件之間的通信是通過組件的接口來實現的,com組件接口的實現是統一的,它采用的是虛擬函數表(VTBL)形式。虛擬函數表中包含了組件函數的一組指針,我們可以通過這組指針來獲取我們想要通信的組件函數的內存地址。
dll(動態(tài)鏈接庫)是包含函數和數據的模塊的集合。它可以導出數據也可以導出函數以供其它的dll調用。dll的加載可以通過靜態(tài)鏈接和動態(tài)鏈接兩種方式:
(1)靜態(tài)鏈接時將所要鏈接的dll模塊以二進制的形式編譯進其他模塊。
(2)動態(tài)鏈接指調用模塊在運行時加載DLL,使用LoadLibrary函數或LoadLibraryEx函數將dll 加載到進程的地址空間,并調用GetProcAddress函數以獲取導出的 DLL 函數的地址。
4)加載dll的優(yōu)點:
(1)DLL可節(jié)省內存并減少交換。通過在內存中共享 DLL 的單個副本,多個進程可以同時使用一個DLL。相比之下,對于使用靜態(tài)鏈接庫構建的每一個應用程序,Windows 都要在內存中為其加載庫代碼的一個副本。
(2)DLL 可節(jié)省磁盤空間。 多個應用程序可以共享磁盤上的一個 DLL 副本。相比之下,使用靜態(tài)鏈接庫構建的每一個應用程序都需要讓鏈接到程序文件映像的庫代碼作為一個單獨的專用副本。
因為動態(tài)鏈接庫具有以上的優(yōu)點,更加符合本畢業(yè)設計的要求,所以在數據庫封裝時,我采用DLL封裝。
四、完成畢業(yè)論文(設計)所必須具備的工作條件及解決的辦法:
1.在了解計算機硬盤的相關知識的前提下,認真分析計算機硬盤結構及相關知識。
2.學習和使用WINDOWS提供的API函數。
3.認真學習串口通訊,及其相關的知識。
4.上課時間,使用學校實驗室提供軟硬件實驗設備;課余的時間,使用PC機作為實驗環(huán)境。
5.學校指導老師在畢業(yè)設計上的精心指導。
五、工作的主要階段、進度與時間安排:
(1)20xx年3月5日——20xx年3月16日 收集資料,擬定畢業(yè)設計題目:通用測控系統——串口通訊庫
(2)20xx年3月17日——20xx年3月31日 整理并消化吸收資料。復習課程設計需要的串口通訊和API函數等知識,并查閱本課程設計相關的知識,對其進行學習。
(3)20xx年4月1日——20xx年4月10日 進一步學習相關知識,細化課程設計的每一步驟,完成課程的大體框架。
(4)20xx年4月11日——20xx年5月7日 在導師指導下,結合自己所做的通用測控系統——串口通訊庫,處理解決相關問題,并撰寫論文,提交初稿。
(5)20xx年5月8日——20xx年5月20日 在導師指導下完成論文的修改和完善,以達到學校所給的論文標準要求。
(6)20xx年5月底,經導師同意,并向答辯組提交論文,參加本人的學士學位畢業(yè)論文答辯。
六、閱讀的主要參考文獻及資料名稱:
1. 范逸之等 C++ Builder與RS-232串行通信控制 清華大學出版社. 2002
2. 馬云濤 VC串口通訊控件MSComm編程詳解 電子工業(yè)出版社 2003
3. Serial Port Complete 2nd Edition.Dec.2007 清華大學出版社 2007
4. 龔建偉 Visual C++_Turbo C串口通信編程實踐(M) 電子工業(yè)出版社. 2004
5. 譚思亮等Visual C++串口通信工程開發(fā)實例導航 人民郵電出版社. 2003
6. 求是科學 Visual C++串口通信技術與工程實踐(第二版) 人民郵電出版社 2004
7. 李書智 Visual C++實踐與提高--串口通信與工程應用篇 中國鐵道出版社2006
8. 丁展、劉海英 Visual C++網絡通信編程實用案例精選 人民郵電出版社 2004
9. 周慧貞 串口通信編程大全 2008
10. (美)Mark.Nelson 串行通信開發(fā)指南第二版.pdf 中國水利水電出版社 2000
11. 龔建軍 龔建軍串口通訊電子書(清晰版) 電子書網站 2009
12. 深入淺出Visual_C++串口編程 北京理工大學 2005
13. 譚思亮等 Visual C++ 串口通信工程開發(fā)實例導航源代碼(M)人民郵電出版社. 2003
14. 龔建偉等 Visual C++_Turbo C串口通信編程實踐(第2版)配套光盤 電子工業(yè)出版社 2007
15. 韓耀旭 Win32串口編程 大連理工大學 2005
【計算機軟件畢業(yè)論文開題報告】相關文章:
計算機軟件畢業(yè)論文開題報告03-06
畢業(yè)論文開題報告要求03-18
畢業(yè)論文開題報告的范文03-19
畢業(yè)論文開題報告封面03-18
銀行畢業(yè)論文開題報告03-08
畢業(yè)論文開題報告格式03-26
畢業(yè)論文開題報告范例12-07
教育畢業(yè)論文開題報告12-13
中文畢業(yè)論文開題報告11-28
畢業(yè)論文開題報告模板03-21