《電子技術(shù)應(yīng)用》
您所在的位置:首頁 > 嵌入式技術(shù) > 設(shè)計應(yīng)用 > 基于89C52單片機(jī)的溫度監(jiān)測系統(tǒng)設(shè)計
基于89C52單片機(jī)的溫度監(jiān)測系統(tǒng)設(shè)計
摘要: 引言溫度檢測是許多行業(yè)的重要工作條件之一。無論是糧食倉庫,、中藥倉庫,,還是圖書保存。都需要在符合規(guī)定的溫度環(huán)境條件之中。而溫度卻是最不易保障的指標(biāo)。針對這一情況。研制一款可靠,、方便、
Abstract:
Key words :

引言

 

溫度檢測是許多行業(yè)的重要工作條件之一,。

 

無論是糧食倉庫,、中藥倉庫,還是圖書保存,。都需要在符合規(guī)定的溫度環(huán)境條件之中,。而溫度卻是最不易保障的指標(biāo)。針對這一情況,。研制一款可靠,、方便、易及時調(diào)控的溫度檢測系統(tǒng)就顯得極為重要,。筆者運(yùn)用D1S18B20采集數(shù)字信號,,通過藍(lán)牙無線通信技術(shù)和USB接口技術(shù)。實現(xiàn)由89S52單片機(jī)檢測控制溫度的監(jiān)測系統(tǒng),。

 

1 系統(tǒng)的結(jié)構(gòu)

 

整個系統(tǒng)由采集板,、通信板和PC機(jī)監(jiān)控程序組成。采集板以溫度監(jiān)測芯片DS18B20t21,、單片機(jī)芯片AT89S52和藍(lán)牙芯片BC4為核心分時完成監(jiān)聽主機(jī)的命令和數(shù)據(jù)采集以及數(shù)據(jù)發(fā)送的功能,。可以根據(jù)接收到的主機(jī)的命令隨時改變系統(tǒng)的工作狀態(tài),。 如圖1,。通信板以USB 芯片PDIUSBD12、單片機(jī)芯片AT89S52為核心,,實現(xiàn)數(shù)據(jù)接收、數(shù)據(jù)發(fā)送,,以及將采集回來的外部信號通過波形圖實時顯示在PC機(jī)界面上,。同時把數(shù)據(jù)保存到數(shù)據(jù)庫中。如圖2,。

 

 


圖1 采集板系統(tǒng)框圖

 

 


圖2 通信板系統(tǒng)框圖

 

2 系統(tǒng)硬件設(shè)計

 

2.1 采集板電路設(shè)計

 

2.1.1 藍(lán)牙模塊—無線接收發(fā)射電路

 

系統(tǒng)采用了CSR公司藍(lán)牙芯片BC417143.該芯片采用Blue2.0,、支持主或從模式,、支持AT命令集、支持波特率為2 400到1 382 400 bps,,適用于嵌入式串口傳輸無線的全新的模塊,。

 

值得注意的是。藍(lán)牙芯片工作在3.3 V,,而MCU工作在5 V.存在邏輯電平不匹配問題,。且IO管腳無法容忍MCU的5 V邏輯電平。設(shè)計中采用了1117芯片進(jìn)行電平轉(zhuǎn)換輸出3.3 V.藍(lán)牙與MCU連接需經(jīng)過電平限制以保證藍(lán)牙模塊正常工作 以下是藍(lán)牙模塊的電源選擇方案及串口模塊的引腳定義,。如圖3,。

 

 


圖3 藍(lán)牙模塊的電路原理圖

 

在建立藍(lán)牙數(shù)據(jù)通信時。需要先對其通信協(xié)議進(jìn)行設(shè)置:

 

(1)UART參數(shù)設(shè)置:先設(shè)置通信協(xié)議長度,,再設(shè)置波特率,、硬件控制流參數(shù)。校驗參數(shù),、數(shù)據(jù)位數(shù)及停止位

 

(2)工作模式設(shè)置:可將藍(lán)牙模塊的工作模式設(shè)置為主模式或者從模式,。

 

(3)設(shè)置藍(lán)牙模塊名:名稱是藍(lán)牙模塊在進(jìn)行通信的標(biāo)識之一。通過設(shè)置藍(lán)牙模塊名協(xié)議可以更改藍(lán)牙模塊名

 

(4)設(shè)置安全模式:藍(lán)牙通信中的數(shù)據(jù)安全主要是有藍(lán)牙通信時的PIN碼保障的,。通過設(shè)置安全模式協(xié)議,。可以根據(jù)不同的需要,。設(shè)置藍(lán)牙通信的安全模式

 

(5)設(shè)置PIN碼:設(shè)置PIN碼可以保證僅有可靠的設(shè)備通過藍(lán)牙與模塊互相通信系統(tǒng)采用的波特率為9 600 bps.傳輸距離能達(dá)10 In,。由于采用藍(lán)牙做為傳輸。具有很強(qiáng)的抗干擾能力

 

2.1.2 采集板電路原理圖

 

采集板電路原理圖如圖4,。藍(lán)牙模塊主要與單片機(jī)的串行IO口連接,。數(shù)字溫度傳感器DS18B20與單片機(jī)的P1.0口連接。繼電器則與P1.2口連接,。溫度傳感器DS18B20將溫度轉(zhuǎn)化為數(shù)字信號通過P1.0 El送給單片機(jī),。經(jīng)單片機(jī)處理后的數(shù)據(jù)由串口傳給藍(lán)牙模塊(BLUETOOTH) 也可以通過藍(lán)牙模塊接收通信板發(fā)來的指令2-2通信板電路設(shè)計通信板主要由單片機(jī)、藍(lán)牙模塊,、USB模塊等相關(guān)電路構(gòu)成,。如圖5PDIUSBD12是一款性價比很高的USB器件它通常用作微控制器系統(tǒng)中實現(xiàn)與微控制器進(jìn)行通信的高速通用并行接口。它還支持DMA傳輸此外它還集成了許多特性,。包括SoftConnetTM,、GoodLinkTM、可編程時鐘輸出低頻晶振和終止寄存器集合 所有這些特性都為系統(tǒng)顯著節(jié)約了成本,。 同時使USB功能在外設(shè)上的應(yīng)用變得容易,。

 

 


圖4 采集板電路原理圖

 

PDIUSBD12的8根DATA引腳與單片機(jī)的PO口相連接,采用 10 k的排阻作為上拉電阻,;SUSPEND是當(dāng)芯片掛起狀態(tài)掛起時,,輸出為高,。

 

與單片機(jī)的P1.1連接:INT_N是中斷請求。與單片機(jī)的IN,,m 連接:RD N和WR N讀寫選通信號分別與單片機(jī)的RD和WR連接,;DMREQ、DMACK N,、EOT N分別是DMA 的中斷請求,、DMA應(yīng)答和DMA傳輸完成。由于沒用啟用DMA功能直接接高電平,。RESET N是復(fù)位引腳,。接單片機(jī)的P1.7;GL N是芯片的工作指示燈,。接人一個LED指示燈,。可以直接觀察USB設(shè)備的運(yùn)行狀態(tài),;XTAL1和XTAL2接6MHZ.CS N為片選信號,。接單片機(jī)的PI.6,A0地址線,,采用I/O口模擬,,接單片機(jī)P3.4:D+和D一是USB的差分?jǐn)?shù)據(jù)線分別串聯(lián)一個l8 Q的阻抗匹配電阻。后接USB插頭上 ,。

 

藍(lán)牙模塊連接方法與采集板的連接方式相同,。

通訊板的信號流程為:由采集板采集的溫度數(shù)據(jù)經(jīng)藍(lán)牙模塊傳輸?shù)酵ㄓ嵃迳希偷絾纹瑱C(jī)上處理,。通過PDIUSBD12傳輸?shù)絇C上進(jìn)行顯示保存,。

 

單用戶在PC上進(jìn)行操作時,數(shù)據(jù)由PC通過PDIUSBD12傳送到單片機(jī),。再經(jīng)過藍(lán)牙傳輸,,送到采集板進(jìn)行相對的響應(yīng)。

 

 


圖5 通信板電路原理圖

 

3 軟件設(shè)計

 

本系統(tǒng)涉及內(nèi)容較多,。開發(fā)環(huán)境也都不一樣,,對于單片機(jī)軟件的開發(fā)是基于KEIL uVision 3的uVision3集成開發(fā)環(huán)境IDE是一個基于Window的軟件開發(fā)平臺,有功能強(qiáng)大的編輯器,、項目管理器和制作工具,。

 

對于USB驅(qū)動的開發(fā)采用了WinDriver9.2.1.用該軟件生成所需驅(qū)動只需要USB設(shè)備插入后通過簡單的幾步就可以完成,同時還可以根據(jù)需要生成相應(yīng)的應(yīng)用程序代碼,。方便應(yīng)用程序的開發(fā)嘲,。

 

采集板的系統(tǒng)流程圖如圖6,通訊板的系統(tǒng)流程圖如圖7PC機(jī)應(yīng)用程序則采用了VISUAL STUDIO 6.0進(jìn)行開發(fā),。采用C++語言編寫程序代碼,。由于VC具有文檔類程序、對話框類程序等,??梢院芸斓貙崿F(xiàn)界面的編程。

 

 


圖6 采集板程序流程圖

 

 


圖7 通信板程序流程圖

 

為了將波形圖實時顯示,。就需要重復(fù)繪制波形圖,。運(yùn)用傳統(tǒng)的繪圖方法。會引起屏幕的強(qiáng)烈閃爍?,F(xiàn)在常用的解決方法是:利用內(nèi)存繪圖的技術(shù),。將需顯示的圖形繪制在內(nèi)存位圖中。然后再拷貝到屏幕上,。很好地解決了屏幕閃爍的問題,,并且處理速度快自定義的繪圖函數(shù)聲明如下。在該函數(shù)內(nèi)部實現(xiàn)了內(nèi)存繪圖,。

 

void CMyusbDlg::MEM— DRAW(int ID,,unsigned char m_buf,int d_ pnow,int ONDRAW,,CString TXT)

 

在數(shù)據(jù)保存方面,。本系統(tǒng)使用Access建立數(shù)據(jù)庫。系統(tǒng)流程圖如圖8,。

 

 


圖8 PC機(jī)主程序流程圖

 

當(dāng)主程序開始后,。初始化了USB和界面后。就創(chuàng)建一個新的線程,,和主線程并行工作,。新線程主要就是完成USB數(shù)據(jù)的讀取。然后把接收到得數(shù)據(jù)存放到一個緩沖區(qū)和數(shù)據(jù)庫中,。緩沖區(qū)主要是供主線程顯示波形時使用,。數(shù)據(jù)庫則供用戶日后查看歷史記錄使用。

 

4 結(jié)論

 

提出了一種基于USB與藍(lán)牙芯片BC417143的無線溫度監(jiān)測系統(tǒng)的設(shè)計方案,。并從硬件和軟件兩個方面介紹了系統(tǒng)的設(shè)計過程,。實現(xiàn)了對溫度信息進(jìn)行的無線數(shù)據(jù)采集。利用藍(lán)牙芯片作為無線收發(fā)模塊,。DS18B20作為溫度數(shù)據(jù)采集,。USB接口芯片作為與PC機(jī)的通信接口。簡化了電路設(shè)計并具有易擴(kuò)展和組網(wǎng)的特點,。

此內(nèi)容為AET網(wǎng)站原創(chuàng),,未經(jīng)授權(quán)禁止轉(zhuǎn)載。