1. 程式人生 > >開發感想 基於8051的資料採集系統(科技)

開發感想 基於8051的資料採集系統(科技)

競賽作品名稱

基於8051的資料採集系統

簡介

下位機:8051開發板上的感測器採集需要的資料,通過RS-232傳送給上位機。

上位機:Win7系統,用C#寫的串列埠除錯程式接收資料。

資料伺服器:上位機與資料伺服器用socket進行通訊,上位機把經過處理的資料發給資料伺服器。

查詢資料

在開發中,網路查詢資料是常見的。在這次專案中,部落格與論壇提供了很多優質資料。

一個現象:過期與錯誤知識的存在,浪費了很多的時間與精力。我想改善這種現象,於是決定:我要寫部落格,多寫一些好的內容。

專案進行

專案有三個核心

  1. 開發板的資料採集與上傳
  2. PC上位機程式,接受串列埠傳來的資料
  3. 上位機與資料伺服器的資料傳遞程式

一二做的好,因為是緊緊圍繞核心功能展開的,任務很快就完成了。在三的實現上,飄飄然了。花了一個下午做一個錦上添花的模組,後期除錯socket通訊模組發現重大bug。然後,趕呀趕,改呀改。嗨。。。都是辛酸淚。

所以我得到的工程經驗是:工程的交付期限是重要的。先完成核心模組,再進行錦上添花。

通訊線纜

貴!RS-232轉485,這兩個東西,幾十塊錢。長見識了。有時,在通訊線纜上的花費可能超出想象。

通訊之交換器與路由器

新手實現socket通訊時,我的建議是使用路由器。

見招拆招

實現一個功能往往有多個選擇。這個不行,那就換另一個。用手頭現有的硬體實現預期的功能,是本事。

微控制器新手開發版

板子配套的多為各個模組進行1+1的例項,在競賽、研究中,需求往往是11+11。這就需要懂原理!能夠由1+1升級成11+11。

因為新手開發板主要是實現“100以內加減的”。學習到一定境界後,會出現被開發板的硬體架構限制住的情況!所以,能夠根據需求,自行設計開發板的人,棒棒噠。

硬體選型與電路板製作

建議新手先用廠家做好的成品開發板。

這次競賽中,有位新手想自己做出來一個開發板,專案時間20天,中期報告上說:型號那麼多,不知道選哪個。

自己做開發板是可以,但是需要很多的經驗。器件有時並不理想,而且器件之間需要匹配。一些晶片看著很硬,但是過了極限電壓就燒了,那可都是錢呀。

對啦!請把數位電路當做類比電路來處理。各點的電壓好好算一下。數位電路可不是簡單的01。

見多識廣的重要性

C#中有許多類庫,有的時候費大勁寫出來的程式碼有相對應的成熟的庫。如果見多識廣,早知道這個庫呢?直接呼叫就好,那麼專案也會快速向前推進。

專案經驗的重要性

這一次經歷讓我意識到了:經驗是很重要的。

模組->系統

在做專案的時候,我是把系統劃分為多個大模組。又把大模組分為多個小模組。

小模組的寫、除錯、完成和整合。

軟體工程中相關的思想和方法,很實用。推薦在專案開始之前,閱讀相關的