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