摘要:在單片機(jī)教學(xué)過程中,對(duì)程序的學(xué)習(xí)可以利用Wave、Keil C51等軟件來演示具體的執(zhí)行過程,但是對(duì)程序的執(zhí)行效果卻難以形象地體現(xiàn)出來,而Proteus仿真軟件的出現(xiàn)很好地解決了這個(gè)問題,該軟件不但可以模擬硬件系統(tǒng),而且可以把編譯好的程序代碼裝入仿真元件中,通過運(yùn)行仿真系統(tǒng)可以看到執(zhí)行效果。Proteus軟件在單片機(jī)教學(xué)中的應(yīng)用,提高了學(xué)生的學(xué)習(xí)興趣,取得了良好的教學(xué)效果。
關(guān)鍵詞:?jiǎn)纹瑱C(jī)教學(xué);仿真軟件
Proteus軟件是英國(guó)Labcenter·electronics公司出版的EDA工具軟件。它不僅具有其他EDA工具軟件的仿真功能,還能仿單片機(jī)及外圍器件。它是目前最好的單片機(jī)及外圍器件的仿真工具。雖然目前在國(guó)內(nèi)剛剛推廣,但已受到單片機(jī)愛好者、教師和科技工作者的青睞。
Proteus仿真軟件的ISIS具有模擬電路仿真、數(shù)字電路仿真、單片機(jī)及其外圍電路組成系統(tǒng)的仿真、RS232動(dòng)態(tài)仿真、I2C調(diào)試器、SPI調(diào)試器、鍵盤和LCD系統(tǒng)仿真的功能;有各種虛擬儀器,如示波器、邏輯分析儀、信號(hào)發(fā)生器等。支持目前主流的單片機(jī)類型有:68000系列、8051系列、AVR系列、PIC12系列、PIC16系列、PIC18系列、Z80系列、HC11系列以及各種外圍芯片,符合我們提出的單片機(jī)軟件仿真系統(tǒng)的標(biāo)準(zhǔn)。該軟件不但可以模擬硬件系統(tǒng),而且可以把編譯好的程序代碼裝入仿真元件中,通過運(yùn)行仿真系統(tǒng)可以像焊接好的電路板一樣看到系統(tǒng)的執(zhí)行效果。
Proteus是單片機(jī)課堂輔助教學(xué)的先進(jìn)手段
(一)Proteus仿真軟件使元器件虛擬化,易于學(xué)生理解系統(tǒng)硬件組成
Proteus可提供30多個(gè)元件庫,可以仿真數(shù)字和模擬、交流和直流等數(shù)千種元器件。用戶甚至可以實(shí)時(shí)采用諸如LED/LCD、鍵盤、RS232終端等動(dòng)態(tài)外設(shè)模型來對(duì)設(shè)計(jì)進(jìn)行交互仿真。還可以直接在基于原理圖的虛擬原型上編程,再配合顯示及輸出,能看到運(yùn)行后輸入輸出的效果。配合系統(tǒng)配置的虛擬邏輯分析儀、示波器等,Proteus建立了完備的電子設(shè)計(jì)開發(fā)環(huán)境。
下面以數(shù)碼管的動(dòng)態(tài)顯示為例加以介紹。系統(tǒng)硬件結(jié)構(gòu)如圖1所示。

圖1 數(shù)碼管動(dòng)態(tài)顯示
從圖1可以看出,由80C51單片機(jī)、排組和四段共陰極LED數(shù)碼光組成的動(dòng)態(tài)顯示演示系統(tǒng),它的結(jié)構(gòu)比較簡(jiǎn)單。但對(duì)于剛剛學(xué)習(xí)單片機(jī)的學(xué)生來說,對(duì)簡(jiǎn)單系統(tǒng)的結(jié)構(gòu)、組成及連接方式仍然比較陌生,而Proteus仿真軟件很好地解決了這個(gè)問題,使得在課堂上不能看到的實(shí)際器件,通過Proteus提供的元件庫虛擬化地展現(xiàn)在學(xué)生面前,易于學(xué)生理解系統(tǒng)硬件組成及設(shè)計(jì)方法。
(二)Proteus仿真軟件使抽象程序具體化,提高了學(xué)生的學(xué)習(xí)興趣
在Proteus繪制好原理圖后,調(diào)入已編譯好的目標(biāo)代碼文件:*.HEX,可以在Proteus的原理圖中看到模擬的實(shí)物運(yùn)行狀態(tài)和過程。
Proteus 6.9 Professional開發(fā)環(huán)境界面提供仿真控制按鈕,在硬件虛擬電路連接好并且把相應(yīng)的十六進(jìn)制代碼調(diào)入芯片后,可以控制程序的運(yùn)行、單步運(yùn)行、暫停和停止。使得抽象的程序執(zhí)行過程變得容易理解,大大提高了學(xué)生的學(xué)習(xí)興趣。
現(xiàn)以數(shù)碼管的動(dòng)態(tài)顯示為例加以介紹。通過Wave或Keil C51編寫程序源代碼,編譯得到可以調(diào)入虛擬芯片的可執(zhí)行代碼文件,即Led.Hex文件。然后在芯片上先點(diǎn)擊右鍵,再點(diǎn)擊左鍵即可打開對(duì)芯片的編輯對(duì)話框,在Program File后的文本框調(diào)入代碼所在的路徑,然后控制程序的執(zhí)行就可以看到程序執(zhí)行效果,如圖2所示。

圖2 數(shù)碼管動(dòng)態(tài)顯示運(yùn)行效果圖
由此可以看出,Proteus不僅可將許多單片機(jī)實(shí)例功能形象化,也可將許多單片機(jī)實(shí)例運(yùn)行過程形象化。前者可在相當(dāng)程度上得到實(shí)物演示實(shí)驗(yàn)的效果,后者則可獲得實(shí)物演示實(shí)驗(yàn)難以達(dá)到的效果。
Proteus是單片機(jī)課程設(shè)計(jì)、畢業(yè)設(shè)計(jì)
和大學(xué)生電子設(shè)計(jì)大賽的創(chuàng)作園地
課程設(shè)計(jì)、畢業(yè)設(shè)計(jì)是學(xué)生走向就業(yè)的重要實(shí)踐環(huán)節(jié)。隨著我國(guó)大學(xué)擴(kuò)招帶來的學(xué)生多、教師和實(shí)踐器材少等一系列問題;另外,對(duì)于沒有實(shí)踐經(jīng)驗(yàn)的學(xué)生來說,設(shè)計(jì)過程中容易造成器件和儀器儀表的損壞。故學(xué)生的課程設(shè)計(jì)和畢業(yè)設(shè)計(jì)需要的元器件數(shù)量急劇增加,這就需要學(xué)校提供大量的資金支持。而采用Proteus進(jìn)行仿真則不存在上述問題,其試驗(yàn)過程是比較安全的。
舉辦大學(xué)生電子設(shè)計(jì)大賽也是培養(yǎng)學(xué)生動(dòng)手能力的一個(gè)有效途徑。然而受試驗(yàn)場(chǎng)地、試驗(yàn)器材的限制,大多數(shù)學(xué)生不能得到充分鍛煉。隨著Proteus軟件被引入課堂教學(xué)中,多數(shù)學(xué)生可以在實(shí)驗(yàn)室、機(jī)房,甚至學(xué)生宿舍組建開發(fā)小組,可以具體地在Proteus中做一個(gè)工程項(xiàng)目,并將其最后移植到一個(gè)具體的硬件電路中,讓學(xué)生了解將仿真軟件與具體工程如何結(jié)合起來,有利于學(xué)生對(duì)工程實(shí)踐的了解和學(xué)習(xí)。
由于Proteus提供了大量的元器件庫,提供了修改電路設(shè)計(jì)的靈活性,提供了實(shí)驗(yàn)室在數(shù)量、質(zhì)量上難以相比的虛擬儀器、儀表,因而也提供了培養(yǎng)學(xué)生實(shí)踐精神、創(chuàng)造精神的平臺(tái)。為單片機(jī)課程設(shè)計(jì)、畢業(yè)設(shè)計(jì)和大學(xué)生電子設(shè)計(jì)大賽提供了有利的條件。
Proteus是單片機(jī)實(shí)驗(yàn)教學(xué)的虛擬平臺(tái)
目前,各個(gè)高校都建立了單片機(jī)實(shí)驗(yàn)室,并且基本都是采用相應(yīng)的硬件仿真設(shè)備,不僅需采購(gòu)大量的硬件設(shè)備,而且設(shè)備維護(hù)工作量也非常巨大。但是由于單片機(jī)的種類繁多,再加上資金的限制,一個(gè)實(shí)驗(yàn)室不可能擁有所有種類的單片機(jī)仿真設(shè)備。建設(shè)基于Proteus軟件仿真的單片機(jī)實(shí)驗(yàn)室,在硬件設(shè)備配置有限的情況下,可以很好地解決資金和設(shè)備維護(hù)問題;大量的仿真實(shí)驗(yàn)可以在軟件環(huán)境中實(shí)現(xiàn),大大增強(qiáng)了實(shí)驗(yàn)室向?qū)W生開放的便利性。在實(shí)際運(yùn)行中,取得了良好的教學(xué)效果。
Proteus的元器件、連接線路等和傳統(tǒng)的單片機(jī)實(shí)驗(yàn)硬件高度對(duì)應(yīng),具有設(shè)計(jì)靈活、結(jié)果和過程統(tǒng)一的特點(diǎn),可使設(shè)計(jì)時(shí)間大為縮短、耗資大為減少,這在相當(dāng)程度上替代了傳統(tǒng)單片機(jī)實(shí)驗(yàn)教學(xué)的功能。例如元器件選擇、電路連接、電路檢測(cè)、電路修改、軟件調(diào)試、運(yùn)行結(jié)果等。除了現(xiàn)存的儀器外,Proteus還提供了一個(gè)圖形顯示功能,可將線路上變化的信號(hào)以圖形方式實(shí)時(shí)顯示出來,其作用與示波器相似,但功能更多。這些虛擬儀器、儀表具有理想的參數(shù)指標(biāo),例如極高的輸入阻抗、極低的輸出阻抗。這些都盡可能地減少了儀器對(duì)測(cè)量結(jié)果的影響。學(xué)生可以根據(jù)實(shí)驗(yàn)內(nèi)容的要求,在Proteus元件庫中選擇所需要的虛擬元件設(shè)計(jì)應(yīng)用電路。這樣,學(xué)生不僅可以調(diào)試自己編寫的程序,而且可以形象、直觀地看到程序執(zhí)行的效果。因此,基于Proteus軟件仿真建設(shè)的實(shí)驗(yàn)室是單片機(jī)實(shí)驗(yàn)教學(xué)的虛擬平臺(tái)。
Proteus仿真軟件在單片機(jī)教學(xué)中的應(yīng)用,有利于促進(jìn)課程和教學(xué)改革,更有利于專業(yè)人才培養(yǎng),提高了學(xué)生的學(xué)習(xí)興趣和創(chuàng)新能力,具有很大的靈活性和可擴(kuò)展性。利用Proteus提供的可靠的虛擬器件和儀表,不但經(jīng)濟(jì)優(yōu)勢(shì)明顯,而且大大提高了教學(xué)效率,對(duì)學(xué)生實(shí)踐能力的培養(yǎng)具有重大的現(xiàn)實(shí)意義。
參考文獻(xiàn):
[1]李華.MCS-51系列單片機(jī)使用接口技術(shù)[M].北京:北京航空航天大學(xué)出版社,1993.
[2]左宇翔,錢劍敏.UC/GU在MCS51系列單片機(jī)系統(tǒng)上移植的仿真實(shí)現(xiàn)[J].微計(jì)算機(jī)信息,2006,(22):69—100.
作者簡(jiǎn)介:
楊俊起(1979—),河南濮陽人,河南理工大學(xué)電氣工程與自動(dòng)化學(xué)院教師,研究方向?yàn)橛?jì)算機(jī)控制、檢測(cè)與自動(dòng)化裝置。
(本欄責(zé)任編輯:張立環(huán))