摘 要:單片機系統設計包含硬件設計和軟件設計2部分。傳統的方法是先進行硬件設計,然后使用仿真器在硬件電路上進行仿真調試。當硬件電路不滿足設計要求時,就需要修改硬件電路重新進行調試。Proteus是單片機系統仿真軟件,在Proteus環境下可直接對單片機系統進行硬件設計和軟件仿真,當硬件電路不滿足設計要求時,即直接修改電路重新進行仿真,直到系統軟硬件滿足要求為止,故應用Proteus進行單片機系統仿真設計提高開發效率。使用Protues對基于D18B20單片機多路溫度采集系統進行設計和仿真,驗證該設計的正確性和可行性。
關鍵詞:Proteus;D18B20;硬件電路;多路溫度采集系統
Applicaion of Proteus in ingle Chip Computer ystem Design
DONG Pusong
(haanxi Ruyi Electric Company,Xianyang,712099,China)
Abstract:ardware design and software devlopment are included in single chip computer system designraditional software can be tested after hardware design is completedIf hardware circuit can not meet the need,modify of circuit design is needed and softreware would be tested on the modified harewareProteus is integretd simulation envirment for single chip computerardware circuit design and software devlopment can be easily modified to meet the goalhe simulation of D18B20 based on simulation tool Proteus is givenFinally some useful results are achieved,and cost can be decreased and exploiting efficiencies can be improved toohe feasibility and correctness of the design of this system are tested
Keywords:Proteus;D18B20;hardware circuit;multi-temperature acquisition system
由于微電子技術的迅猛發展,單片機在汽車、通信、辦公自動化、工業控制、高級玩具、家用電器等方面都得到了廣泛的應用。單片機作為嵌入式系統的核心器件,其系統設計包括硬件電路設計和程序設計2個方面,調試過程一般分為軟件調試、硬件測試、系統調試3 個過程。軟件調試一般比較容易進行,但如果要進行硬件電路測試和系統調試則比較麻煩,因為要進行這2個過程必須在電路板制作完成、元器件焊接完畢之后進行,而且電路板的制作、元器件的安裝、焊接費時費力。如果采用作為單片機系統仿真軟件Proteus,則不用制作具體的電路板也能夠完成以上工作。毫無疑問,在使用Proteus進行系統虛擬開發成功之后再進行實際制作,必然可以提高開發效率、降低開發成本、提高開發速度,而這些因素對于企業來講是非常重要的。
1 Proteus簡介
Proteus是基于 PICE3F仿真引擎的混合電路仿真軟件,不僅能夠仿真模擬、數字電路以及模數混合電路,更具特色的是它能夠仿真基于單片機的電子系統。Proteus不但完全支持 MC-1 及其派生系列單片機的設計系統,另外也能仿真基于 AVR 和 PIC 系列的單片機系統。Proteus的仿真資源Proteus 軟件可提供的模擬 、數字、交 (直) 流等元器件達 30 多個元件庫,共計數千種。此外,對于元件庫中沒有的器件,使用者也可依照需要自己創建。軟件調試方面,其自身只帶匯編編譯器,不支持 C 語言。但可以將它與 Keil C1集成開發環境連接,將用匯編和 C語言編寫的程序編譯好之后,可以立即進行軟、硬件結合的系統仿真,像使用仿真器一樣來調試程序。
2 硬件方案設計
本設計中以 D18B20為傳感器、A89C1單片機為控制核心組成的多點溫度測試系統,如圖1所示。
D18B20是美國Dallas公司繼 D1820之后推出的增強型單總線數字溫度傳感器,在測溫精度、轉換時間、傳輸距離、分辨率等方面較D1820有很大的改進,而且使用方便。采用 D18B20數字溫度傳感器組成的多點溫度測量系統,克服了傳統溫度測量系統測量精度低、外圍硬件電路復雜、可靠性較低等缺點,具有測溫系統簡單、測溫精度高、連接方便、占用口線少等許多優點,為多點溫度的測量帶來了極大的方便[2]。
21 測溫部分
本部分采用將 D18B20 的 I/O 數據線與89C1單片機 P33,P34,P3,P36口線相連,用4只D18B20同時測量 4路溫度 (視實際需要還可擴展通道數 ),實現多點溫度檢測。D18B20只有3個引腳,其中兩根是電源線 VDD和 GND (本設計中采用外部電源供電方式 ),另外一根用作總線 DQ,其輸出和輸入均是數字信號且與 L電平兼容,因此可以與微處理器直接進行接口[3]。主 CPU經過單線接口訪問 D18B20的工作流程為:對 D18B20進行初始化 →ROM操作命令 →存儲器操作命令 →數據處理。主 CPU對 ROM操作完畢后即發出控制操作命令,使 D18B20完成溫度測量并將測量結果存入高速暫存器中,然后讀出此結果。
22 鍵盤與顯示部分
本設計采用獨立式鍵盤和液晶顯示。鍵盤用來設置上限于下限的溫度報警;字符液晶用來顯示通道號、該通道的溫度和所設置的上下限溫度。使用液晶顯示更加形象,而且抗干擾能力強,便于以后擴展。
23 串口通信
系統通過串口與上位及通信。可以實時的向上位機傳送溫度值。實物中通過R 232總線與計算機連接。接受數據界面由VB編寫。
3 軟件電路設計
單片機編程,開機之初先進行初始化,然后采集溫度4路溫度信號。通過鍵盤選擇要顯示的通道溫度并在液晶屏上顯示。再判斷是否向上位機發送數據,有請求是則發送數據,無請求時則判斷數據是否正常,不正常則報警(蜂鳴器鳴叫)。軟件通過C語言編程,先在Keil C1集成開發環境下將編好的程序進行編譯,調試。調試通過后,用生成的EX文件在Proteus進行仿真。
4 結 語
利用Proteus對數字式溫度傳感器 D18B20構成通用多點溫度測量系統進行仿真,仿真結果表明該系統具有測溫系統簡單、測溫精度高、連接方便、性能穩定等優點,能有效地降低成本,縮短開發周期,具有良好的應用前景。
參 考 文 獻
[1]趙紅旗,王云景D18B20在16路測溫系統中的應用[J]儀表技術,2006(1):69-71
[2]沙占友智能化集成溫度傳感器原理與應用[M]北京:機械工業出版社,2002
[3]劉映群Proteus與Keil整合構建單片機虛擬實驗室[J]中國現代教育裝備,200(8):11-13
[4]張毅剛,彭喜元,姜守達,等新編 MC-1單片機應用設計[M]哈爾濱:哈爾濱工業大學出版社,2006