摘要:Proteus軟件是單片機仿真的一種電子設(shè)計自動化軟件。通過舉例詳細地說明了Proteus軟件在單片機課程教學(xué)中的應(yīng)用,通過理論與仿真驗證相結(jié)合,可以克服傳統(tǒng)教學(xué)中的不足。
關(guān)鍵詞:Proteus軟件;單片機;教學(xué)
單片機教學(xué)多以理論教學(xué)為主,事實上單片機是一門實踐性很強的學(xué)科,教學(xué)中需要很多硬件設(shè)備,如計算機、仿真器、燒寫器、實驗電路等等,一般理論課堂難以采用硬件輔助進行教學(xué),即便演示,效果也不好。Proteus軟件是單片機仿真的一種電子設(shè)計自動化軟件,具有強大的仿真功能。近年來隨著V6.7版本的推出,在單片機的學(xué)習(xí)、開發(fā)及設(shè)計中得到了廣泛的應(yīng)用。Proteus軟件可以貫穿于單片機教學(xué)的各個環(huán)節(jié),借以進行仿真演示能夠取得很好的教學(xué)效果。
實例引導(dǎo),激發(fā)興趣
在單片機的入門教學(xué)中總會提到單片機在工業(yè)控制、智能儀表、家用電器、辦公自動化等領(lǐng)域的極為廣泛的應(yīng)用。但是在課堂教學(xué)中很難提供具體的實物,容易讓學(xué)生產(chǎn)生單片機距離生活很遙遠的感覺。Proteus軟件可以展示單片機的一些應(yīng)用實例,其自帶的大量的例子,如交通控制燈、計算器、國際象棋游戲機等,便于學(xué)生看到單片機在實際產(chǎn)品中的應(yīng)用電路。再通過運行仿真,比如讓紅、綠、黃交通燈亮起來,讓計算器進行各種計算,讓國際象棋游戲機進行人機對弈等,可以極大地提高學(xué)生學(xué)習(xí)單片機的興趣,進而引導(dǎo)他們主動學(xué)習(xí)單片機知識。教學(xué)實踐證明,通過Proteus軟件展示實例能夠收到事半功倍的效果。
菜單窗口,展示資源
在單片機教學(xué)中,單片機的系統(tǒng)資源是一項重要的內(nèi)容,教師可以借助Proteus軟件讓學(xué)生更深入地了解單片機的系統(tǒng)資源。例如,對于寄存器內(nèi)容的查看,可以執(zhí)行在Debug菜單下Registers菜單項命令打開相應(yīng)的窗口。對于系統(tǒng)內(nèi)部數(shù)據(jù)存儲器的查看,可以執(zhí)行debug菜單下的Internal memory菜單項命令打開相應(yīng)的窗口。對于特殊功能寄存器的查看,同樣執(zhí)行Debug菜單下的SFR memory菜單項命令打開相應(yīng)的窗口。對于內(nèi)部程序存儲器的查看,還可以執(zhí)行Debug菜單下的Source code菜單項命令打開相應(yīng)的窗口查看內(nèi)部程序存儲器中的數(shù)據(jù)及其匯編代碼。在教學(xué)中,通過展示這些窗口,可使學(xué)生對單片機的存儲器結(jié)構(gòu)以及存儲方式有更進一步的理解。
軟件編程,電路驗證
在單片機匯編語言的指令及編程學(xué)習(xí)中,涉及的內(nèi)容主要包括對匯編語言中具體指令的執(zhí)行效果驗證、算法的具體實現(xiàn)、程序中語法錯誤的檢查和邏輯錯誤的驗證等內(nèi)容。在教學(xué)中,學(xué)生對單純的理論分析會感到枯燥,教師如果根據(jù)課堂內(nèi)容用Proteus軟件編寫好指令程序,并充分考慮學(xué)生的學(xué)習(xí)能力配合相應(yīng)的仿真電路,驗證教學(xué)中的指令程序,便可以達到預(yù)期的教學(xué)目的。
例如,對于兩個16位二進制數(shù)的乘法運算R4R5×R6R7=R3R4R5R6R7的匯編語言實現(xiàn)。為了直觀地驗證程序執(zhí)行的正確性,教師可以提前設(shè)計一個能完成數(shù)據(jù)輸入(帶顯示)和結(jié)果輸出(帶顯示)的硬件電路。這樣通過仿真的輸入數(shù)據(jù)以及仿真計算的結(jié)果顯示,就可以驗證編寫的乘法運算是否正確。
再如,在學(xué)習(xí)匯編程序設(shè)計中的循環(huán)控制程序時,教師可以使用Proteus軟件在Led.asm文件中編寫如下的一段程序,并設(shè)計相應(yīng)的電路(如圖1),通過全速運行或單步運行調(diào)試驗證如下程序并進行仿真,電路中的紅色指示燈從D1至D8依次循環(huán)點亮。在課堂教學(xué)中,利用這個設(shè)計好的例子可以驗證循環(huán)控制程序的執(zhí)行效果、算法的具體實現(xiàn)及程序中的語法和邏輯有無錯誤。學(xué)生通過紅色指示燈顯示的情況,可形象直觀地認識循環(huán)控制程序的執(zhí)行效果,還可以根據(jù)現(xiàn)象分析程序中的算法、語法和邏輯有無錯誤,達到很好的教學(xué)效果。

硬件設(shè)計,仿真演示
Proteus軟件可以仿真單片機及其周圍的電路設(shè)備,如仿真51系列、AVR、PIC等常用的單片機,還可提供周邊設(shè)備的仿真,只要給出電路圖就可以仿真。Proteus提供了大量的仿真元器件,有RAM、ROM、鍵盤、馬達、喇叭、七段數(shù)碼管、LED、LCD、AD/DA、部分SPI器件、部分IIC器件等等。與Keil或PIC的Mplab軟件聯(lián)接使用,可以像使用仿真器一樣調(diào)試程序。教師可以借助Proteus軟件種類齊全的仿真器件和強大的仿真功能來進行單片機電路方面的教學(xué)。
例如,在單片機接口電路的教學(xué)中關(guān)于鍵盤輸入、顯示(數(shù)碼管)接口以及馬達驅(qū)動電路的設(shè)計,Proteus仿真軟件可以仿真電路時所模擬的元件真實工作情況。Proteus軟件的仿真元器件庫中有各種按鍵、顯示數(shù)碼管以及馬達,因此可以根據(jù)教學(xué)的需要設(shè)計方案,選擇相應(yīng)的按鍵、顯示數(shù)碼管和馬達設(shè)計接口電路,設(shè)計搭好電路(如圖2),編好相應(yīng)的程序。進行仿真時,可以仿真地按下按鍵以顯示數(shù)碼管上的數(shù)值以及馬達的工作情況。

Proteus軟件中還有各種仿真儀器儀表工具,如信號發(fā)生器、電壓源、電流源、電壓表、電流表、示波器、邏輯分析儀等等,理論上同一種儀表儀器可以在一個電路中隨意的調(diào)用。除了仿真現(xiàn)實存在的儀器外,Proteus還提供了一個圖形顯示功能,可以將線路上變化的信號以圖形的方式實時顯示出來,作用與示波器相似,但功能更多。因此在教學(xué)中,可以運用這些虛擬儀器儀表及圖形顯示功能來演示程序和電路的調(diào)試過程,為學(xué)生更清晰地講解程序和電路設(shè)計調(diào)試中的細節(jié),讓學(xué)生更容易發(fā)現(xiàn)程序和電路設(shè)計過程中遇到的問題,更容易地掌握解決這些問題的思路和方法。
借助電子設(shè)計自動化方面的軟件進行教學(xué)的方法擺脫了傳統(tǒng)教學(xué)領(lǐng)域傳授知識的局限,使教師有更多的時間進行課堂管理,觀察學(xué)生的反應(yīng),檢查課堂教學(xué)結(jié)果,并做出相應(yīng)的教學(xué)調(diào)整,增加必要的、傳統(tǒng)教學(xué)無法實現(xiàn)的過程,施加必要的教學(xué)手段,從而更出色地完成教學(xué)任務(wù)。在教學(xué)中,實驗過程、實驗步驟的演示在課堂上完成,可以克服由于學(xué)生不理解,教師不得不重復(fù)講解和演示的弊端。總之,這種方法在教學(xué)過程中可以實現(xiàn)軟、硬件相結(jié)合,克服了用單片機實驗教學(xué)板教學(xué)中硬件電路固定、學(xué)生不能更改、實驗內(nèi)容固定等局限性,有助于擴展學(xué)生的思路,提高學(xué)生的學(xué)習(xí)興趣。
參考文獻:
[1]馬正強.單片機虛擬實驗室的建立[J].單片機與嵌入式系統(tǒng)應(yīng)用,2005,(3).
[2]劉映群.Proteus與Keil整合構(gòu)建單片機虛擬實驗室[J].中國現(xiàn)代教育裝備,2005,(8).
作者簡介:
朱文武(1976—),男,安徽廬江人,安徽機電職業(yè)技術(shù)學(xué)院電氣工程系講師,東南大學(xué)在讀碩士研究生,研究方向為電子技術(shù)教育、信號處理。