武漢軍械士官學校 高 娟 湯 璇 崔艷萍
隨著計算機技術、微電子技術的發展,單片機技術在智能儀器儀表、智能傳感器、數據采集與處理、家電和計算機控制系統等領域廣泛應用,除此之外,單片機在導彈、無人機等裝備中也有廣泛的應用,因此,單片機作為一門專業基礎課在我校的10多個電類相關的大專專業中開設。作為一門實用性比較強的課程,該課程在教學過程中需要軟硬件結合,因此對講授單片機課程的教員提出了更高的要求。
如何讓學生在學好基礎知識的同時,又能迅速地掌握設計應用技術,這是單片機課程教學的難點所在。
目前的單片機課程教學主要由理論教學和實踐教學兩部分組成。理論教學已經改變了傳統的以知識為中心的教學模式,轉變成以項目任務為驅動的教學模式,每一任務涵蓋單片機的一種應用資源,學員在完成任務的過程中掌握了知識點。這種教學方式極大的激發了學員的學習興趣和積極性,經過一年的運行,已經取得了良好的效果。
在實踐教學中,改變了傳統的利用固定的實驗箱,圍繞有限的知識點進行驗證性實驗的方式,轉變成學員動手焊接硬件電路,再編寫程序通過編程器下載至單片機,最后根據結果現象判定軟、硬件是否正確,如果出現錯誤,需要分別檢測軟、硬件,進行調試、糾正,從而得出正確的結果。這種教學方式,增強了學員的動手能力和單片機的開發應用能力,但在運行中也暴露出了一些問題,具體如下:
1.學員對硬件焊接比較感興趣,忽略了對軟件程序的理解和編寫,通常只能照書敲進去,最后得出結果便認為萬事大吉了,而實際上對知識的領悟與掌握很少,多個任務的硬件焊接也只是提高了焊接技能而已,并無太多的實際用處。
2.硬件焊接成本過高,大部分的元器件都是一次焊接就浪費了,一個學期,400多個學員,三塊電路板的焊接成本多達20000多元。
3.硬件焊接時間消耗過多,在實踐課中,大部分時間學員都用來焊接電路板,實際對知識的理解很少,對學習并無大益。
將仿真技術應用于單片機教學中,通過仿真的直觀性和可參與性以及生動有趣的真實感,不僅可以激發學員的學習興趣,提高實踐教學效果,還可以節約時間與成本,因此本文就是探討基于仿真軟件Proteus的實踐教學改革。

圖1 基于Proteus軟件的流水燈實驗原理圖
Proteus軟件是英國Labeenter Electronics公司出版的著名的EDA工具軟件,是世界上目前唯一將電路仿真、PCB設計和虛擬模型仿真軟件三合一的設計平臺。它從原理圖布圖、代碼調試到單片機與外圍電路協同仿真,真正實現了從概念到產品的完整設計。Proteus提供的元件庫,涉及到數字和模擬、交流和直流等數千種元件,具有豐富的儀表資源,支持8051、8086、PIC、AVR、ARM和MSP430等系列的仿真。
在編譯方面采用keil軟件。該軟件是美國Keil Software公司出品的兼容單片機C語言軟件的開發系統。它提供了豐富的庫函數和功能強大的集成開發調試工具,采用全Windows界面,多數語句生成的匯編代碼容易理解,尤其在開發大型軟件時更能體現高級語言的優勢。keil軟件目前已受到單片機愛好者、應用者和開發者的青睞。Proteus和Keil各自都可以進行一定程度仿真調試,但效果不是很理想。我們采用把兩者結合起來,其相互配合發揮Proteus和Keil的優勢使得在仿真過程中的軟件調試和硬件設計更加便捷、高效。
首先是要讓學員熟悉Proteus與Keil軟件環境,學會利用Proteus繪制原理電路圖以及用Keil軟件編寫單片機匯編源程序并生成目標程序。下載目標程序Proteus原理圖的MCU并仿真。下面以單片機控制模擬流水燈的顯示為例介紹。
在Proteus軟件中實現一個流水燈控制系統原理圖的設計,如圖1所示。再使用匯編語言對其進行程序編寫,通過keil軟件編譯產生HEX文件,加載到Proteus中對流水燈控制系統進行軟硬件結合的調試仿真。其中P1口做輸出口,控制8盞燈(P1口輸出低電平時燈被點亮);編程使燈按以下規律顯示:同一時間只有一盞燈點亮,從P1.0控制的燈開始,每盞燈亮1s后,再移向下一盞燈循環往復。
用keil軟件編輯該流水燈的控制系統程序如下:

本文在單片機實驗教學過程引入計算機仿真技術,利用Proteus仿真功能,使學生不需硬件支持也能完成實驗內容,能降低實驗成本,縮短實驗周期,延伸實驗內涵。
[1]伍馮潔,謝斌.基于Proteus與Keil的實驗教學改革[J].實驗室研究與探索,2009.7.
[2]孫凌燕,張允千.Proteus與Keil的整合在單片機實驗開發中的應用[J].實驗室研究與探索,2008.4.
[3]張宏偉,王新環,王新.基于Proteus與Keil的單片機實驗教學改革[J].電氣電子教學學報,2008.6.