單片機是國內(nèi)大專院校電子技術(shù)類專業(yè)的必修課程之一,,很多學生畢業(yè)之后也在從事單片機的軟硬件設(shè)計工作。單片機的開發(fā)要求設(shè)計人員具有一定的硬件設(shè)計基礎(chǔ)和匯編或者C語言的編程能力,,目前國內(nèi)多數(shù)大專院校都是采取先教學后實驗的教學步驟,,學生在學習的過程中缺少一個感性認識,,在實驗時又無法與課本上的知識聯(lián)系起來,因此造成了時間與教學資源的雙重浪費,。
l Proteus的引入
伴隨著計算機軟件和硬件技術(shù)的飛速發(fā)展,,在各個領(lǐng)域都出現(xiàn)了各種仿真系統(tǒng),為各種實際系統(tǒng)的開發(fā)提供了準確可靠的保證,,同時節(jié)約了大量的人力和物力,。仿真技術(shù)的出現(xiàn)與發(fā)展是科技發(fā)展的必然結(jié)果,是現(xiàn)代科技的關(guān)鍵技術(shù)之一,,并逐漸成為科技人員的必備技術(shù),。Proteus是在這種形勢下應(yīng)運而生并迅速發(fā)展的仿真系統(tǒng)。Proteus是模擬電路,、數(shù)字電路,、模/數(shù)混合電路的設(shè)計與仿真平臺;更是單片機系統(tǒng)先進的設(shè)計與仿真平臺,。它真正實現(xiàn)了在計算機上完成從原理圖與電路設(shè)計,、電路分析與仿真、單片機代碼級調(diào)試與仿真,、系統(tǒng)測試與功能驗證到形成PCB的完整的設(shè)計與仿真過程,。它得到了從事單片機事業(yè)的教師、工程技術(shù)人員以及眾多的大學生和單片機技術(shù)愛好者的青睞,。
基于Proteus的單片機虛擬開發(fā)環(huán)境有效的將理論與實驗聯(lián)系起來,,在這個開發(fā)環(huán)境里面可以很好地將演示、硬件電路設(shè)計和軟件設(shè)計結(jié)合起來,,在教學和具體的工程項目中應(yīng)用這個開發(fā)環(huán)境不但有助于提高效率,,而且可以降低開發(fā)成本和風險。目前在電子技術(shù),、機械設(shè)計制造以及軟件開發(fā)等領(lǐng)域都趨向與采用虛擬仿真開發(fā)環(huán)境,,虛擬環(huán)境的采用一方面有助于項目的并行開發(fā)提高產(chǎn)品開發(fā)周期,可以提前進行一些傳統(tǒng)開發(fā)步驟中的后期工作,;另一方面虛擬開發(fā)環(huán)境可以展現(xiàn)產(chǎn)品的雛形,,將實驗品的一些實際問題暴露在虛擬設(shè)計階段,例如機械設(shè)計軟件SoliWorks與LabView的聯(lián)合可以完成機器運動部件的三維運動控制,、控制邏輯分析,、部件碰撞分析等存在風險較大的設(shè)計工作的模擬,對于企業(yè)來說降低風險投資和加快產(chǎn)品上市是贏得市場的關(guān)鍵因素,。因此這里闡述的虛擬開發(fā)環(huán)境可以很好地適應(yīng)將來的科研和產(chǎn)品開發(fā)需要,培養(yǎng)開發(fā)人員的虛擬開發(fā)意識對于企業(yè)和社會來說都是一筆重要的知識財富,。
2.Proteus仿真系統(tǒng)
Proteus是英國Labcenter公司的電路分析與實物仿真軟件,,可以仿真,、分析(Spice)各種模擬器件和集成電路,該軟件的特點是:
(1)實現(xiàn)了單片機仿真和Spice電路仿真相結(jié)合,。具有模擬電路仿真,、數(shù)字電路仿真、單片機及其外圍電路組成的系統(tǒng)的仿真,、RS 232動態(tài)仿真,、I2C調(diào)試器、SPI調(diào)試器,、鍵盤和LCD系統(tǒng)仿真的功能,;有各種虛擬儀器,如示波器,、邏輯分析儀,、信號發(fā)生器等。
(2)支持主流單片機系統(tǒng)的仿真,。目前支持的單片機類型有:68000系列,、8051系列、AVR系列,、PIC12系列,、PIC16系列、PIC18系列,、Z80系列,、HC11系列以及各種外圍芯片。
(3)提供軟件調(diào)試功能,。在硬件仿真系統(tǒng)中具有全速,、單步、設(shè)置斷點等調(diào)試功能,,同時可以觀察各個變量,、寄存器等的當前狀態(tài),因此在該軟件仿真系統(tǒng)中,,也必須具有這些功能,;同時支持第三方的軟件編譯和調(diào)試環(huán)境,如Keil C51 μVision 2等軟件,。
(4)具有強大的原理圖繪制功能,。啟動Proteus后將出現(xiàn)ISIS的設(shè)計窗口,如圖1所示,。包括:標題欄,、主菜單、標準工具欄,、繪圖工具欄,、狀態(tài)欄,、對象選擇按鈕、預(yù)覽對象方位控制按鈕,、仿真進程控制按鈕(最下面一行),、預(yù)覽窗口、對象選擇器窗口,、圖形編輯窗口,。
該軟件還具有電路板演示功能,以溫度顯示為例,,其演示效果如圖2所示,。該演示圖不但有助于教學工作,還可以幫助企業(yè)降低產(chǎn)品設(shè)計風險,。
3 程序開發(fā)
這里以AVR單片機ATmega16和DS18B20為例演示了溫度測量及其顯示的單片機程序開發(fā)過程,,AVR單片機是Atmel公司推出的高性能單片機,該系列單片機部分采用16位結(jié)構(gòu),,所有IO口均可單獨設(shè)置數(shù)據(jù)方向并具有可編程的內(nèi)部上拉電阻,,提高了整體性能和應(yīng)用范圍。在單片機程序設(shè)計方面,,ICCAVR提供了良好的編程界面,,可通過對可視化選項框的選擇來生成初始化程序,如圖3所示,。
在進行項目程序開發(fā)時,,只需要選擇所使用的CPU,I/O口的初始方向,、定時器的使用情況,、UART以及其他外圍功能模塊做出設(shè)置即可生成響應(yīng)的C語言初始化程序。在完成初始化之后程序員只需要針對自己的具體應(yīng)用編寫功能程序即可,。DS18B20支持“一線總線”接口,,測量溫度范圍為-55~+125℃,在-10~+85℃范圍內(nèi),,精度為±O.5℃,。DS1822的精度較差,為±2℃?,F(xiàn)場溫度直接以“一線總線”的數(shù)字方式傳輸,,大大提高了系統(tǒng)的抗干擾性。適合于惡劣環(huán)境的現(xiàn)場溫度測量,,如:環(huán)境控制,、設(shè)備或過程控制、測溫類消費電子產(chǎn)品等,。與前一代產(chǎn)品不同,,新的產(chǎn)品支持3.0~5.5 V的電壓范圍,,使系統(tǒng)設(shè)計更靈活、方便,。而且新一代產(chǎn)品更便宜,體積更小,。DS18B20與單片機的接口只有一條線,,而且DS18B20的單總線特性只需要一個單片機I/O引腳即可支持多個DS18B20,極大程度地降低了硬件開銷,,當然較小的硬件開銷需要相對復(fù)雜的軟件進行補償,,由于DS1820與微處理器間采用串行數(shù)據(jù)傳送,因此,,在對DSl820進行讀寫編程時,,必須嚴格的保證讀寫時序,否則將無法讀取測溫結(jié)果,。其具體流程圖如圖4所示,。
在按照設(shè)計要求編好程序后,雙擊ISIS Profes-sional窗口中的ATmega16單片機,,將彈出一個編輯窗口,,在程序文件中選擇ICCAVR生成的.hex文件,單擊“OK”,。單擊ISIS窗口中的仿真進程控制按鈕,,出現(xiàn)如圖5所示的仿真結(jié)果。改變DS18B20的溫度,,顯示屏將相應(yīng)的顯示,。
4 結(jié) 語
單片機技術(shù)是現(xiàn)代電子工業(yè)中不可缺少的一項技術(shù),掌握單片機技術(shù)是電子信息類專業(yè)學生就業(yè)的一個基本條件,。這里通過單片機產(chǎn)品開發(fā)的實例,,論述了Proteus在單片機教學和單片機應(yīng)用產(chǎn)品研發(fā)中的地位和作用。Proteus是單片機教學與應(yīng)用產(chǎn)品研發(fā)的高效,、經(jīng)濟,、可靠的單片機系統(tǒng)設(shè)計與仿真平臺。學生可在Proteus ISIS窗口中大膽進行電路設(shè)計,、程序設(shè)計,、測量、調(diào)試,、修改,。不僅不會損壞元器件和儀器,且在安裝實物作品前就可看到結(jié)果,。使學生的獨立操作能力,、主動性,、積極性和創(chuàng)造力都得到了發(fā)揮??傊?,基于Proteus的單片機虛擬開發(fā)環(huán)境有利于促進課程和教學改革,更有利于人才的培養(yǎng),;利用仿真系統(tǒng),,不但可以節(jié)約開發(fā)時間和開發(fā)成本,而且還具有很大的靈活性和可擴展性,;也是高校提升實驗室建設(shè)水平有益的嘗試,。