吳葉蘭 段振剛 喬繼紅 蘇維均
摘要:Proteus仿真軟件為單片機實驗教學提出一條仿真教學的新思路。本文通過實例介紹采用Proteus的仿真設計,給出硬件原理圖、軟件流程圖和運行結果。實驗結果證明,與傳統(tǒng)方法相比,Proteus仿真形象直觀,節(jié)約成本,適合單片機課程教學。
關鍵詞:Proteus軟件;仿真軟件;單片機實驗
中圖分類號:G642 文獻標識碼:A
“單片機原理與應用課程”是電氣與自動化、電子技術和信息工程等專業(yè)的主干專業(yè)課,是一門實踐性很強的課程,其實踐教學占有重要地位。目前,單片機的實驗大多在現(xiàn)成的實驗箱上完成,由于這些實驗設備昂貴,維護工作量大,學生除上課外,平時很難有機會實踐;而要想使學生學習好本課程,又必須給他們提供相應的軟硬件環(huán)境,這就形成了矛盾。Proteus仿真軟件正好可以解決這一矛盾。它用軟件方式來模擬硬件系統(tǒng),提供了豐富的元件庫,支持匯編語言和C語言,學生不需要硬件支持就能在計算機上模擬單片機實驗,解決了設備場地等問題,降低了實驗成本,為學生自主實驗提供了條件。
應用Proteus仿真軟件可以使單片機課程的實踐教學和理論教學完全同步,調(diào)動學生學習本課程的積極性,有利于教學質(zhì)量的提高。本文論述了以Proteus為核心的單片機課程仿真實驗的設計。
1Proteus仿真軟件簡介
Proteus軟件是英國Labcenter Electronics公司開發(fā)的EDA工具軟件。和同類軟件相比,Proteus更易操作,功能更強大。該軟件的特點是集單片機和SPICE分析于一身的仿真軟件。具有模擬電路仿真、數(shù)字電路仿真、單片機及其外圍電路組成的系統(tǒng)仿真等。提供了大量的仿真元件和設備,包括各種單片機、常用邏輯電路和調(diào)試工具。如示波器、邏輯分析儀、串口終端、信號發(fā)生器等各種測試儀器;模擬儀表、數(shù)字儀表、噪聲與失真信號顯示器等各種顯示設備;示波器、邏輯分析儀、信號發(fā)生器等各種虛擬儀器。
支持主流單片機系統(tǒng)的仿真。目前支持的單片機類型有:68000系列、8051系列、AVR系列、PIC12系列、PIC16系列、PIC18系列、Z80系列、HC11系列、ARM7等。
提供軟件調(diào)試功能。支持第三方的軟件編譯和調(diào)試環(huán)境,如Keil C51 uVision2 等軟件。具有強大的原理圖繪制功能。
2Proteus軟件仿真實驗的特點
現(xiàn)有的單片機實驗教學環(huán)節(jié)通常包括兩個部分:課內(nèi)實驗和課程設計。其中課內(nèi)實驗設計為10個左右,主要包括:基本的指令系統(tǒng)實驗,匯編程序設計實驗,定時/計數(shù)器實驗,中斷實驗,基本I/O口實驗,并口擴展實驗,串口實驗,鍵盤和LED顯示實驗,A/D和D/A實驗等,所有這些實驗都是在51實驗箱上完成。
由于硬件實驗箱的結構固定,資源有限,學生在做實驗時雖然可以直觀的看到各種元器件,并能做一些連線,但對單片機的系統(tǒng)設計沒有概念,無法將所學的知識融會貫通。所以到課程設計階段,很多學生無法完成綜合性實驗。采用Proteus軟件仿真可以彌補硬件實驗的不足。首先,以上所有硬件實驗都可以事先在Proteus仿真軟件上完成。由于仿真需要學生完成原理圖的設計,所以該過程可以幫助學生建立起系統(tǒng)的概念,為綜合設計做準備。其次,在Proteus仿真軟件實驗的設計中,很多模塊的設計具有共性,學生在完成一個實驗設計后,往往能舉一反三進行類似的設計,把重點放在新模塊的設計上,縮短了實驗周期。第三,Proteus提供了豐富的仿真工具,包括探針、多種激勵源、虛擬儀器和曲線圖表等,這是硬件實驗箱所不具備的,豐富了學生使用虛擬儀器和圖表分析的知識。表1列出了Proteus仿真軟件在設計一些典型實驗時的相同和不同之處。
3單片機實驗Proteus仿真設計
下面通過實例說明如何使用Proteus實現(xiàn)單片機實驗的設計與仿真。
3.1實現(xiàn)功能
設計一個電子密碼鎖。要求實現(xiàn)單片機最小系統(tǒng);輸入接口有0~9數(shù)字鍵、ENTER鍵、刪除鍵;輸出接口有8位數(shù)碼管構成顯示電路,蜂鳴器輸出報警信息。
初始狀態(tài)顯示“PE”,輸入最大6位數(shù)的密碼。當密碼輸入完后,按下ENTER鍵,進行密碼比較,并給出相應的提示信息。在輸入密碼過程中,顯示器只顯示“—”。當數(shù)字輸入超過六個時,給出報警信息。在密碼輸入過程中,若輸入錯誤,可以利用“CLR”鍵刪除剛才輸入的錯誤數(shù)字。若密碼正確,則開鎖,用LED放光二極管1s作為提示;若密碼不正確,三秒內(nèi)禁止按鍵,同時發(fā)出“嘀、嘀”報警聲。
3.2電路設計
Proteus在繪制原理圖時與PROTEL、EWB等軟件相似,都要完成從軟件包的器件庫里取出所需的元件符號,在繪圖區(qū)進行布局,編輯好元件的參數(shù),連線并添加必要的網(wǎng)絡標號等步驟。
3.2.1文件建立
按照設計要求,列出所需的元器件清單,如表2所示。根據(jù)清單,在繪圖區(qū)進行布局,將元件庫中的芯片模型添加進元件列表中,將所需的元件一一列出進行電路設計。
3.2.2硬件原理圖
為了實現(xiàn)電子密碼鎖功能,從硬件設計上可分為CPU,復位電路,時鐘電路,鍵盤輸入模塊和LED顯示模塊等部分。其硬件原理圖如圖1所示。
本設計中CPU采用的是AT89C51,其四個并口分別實現(xiàn)不同的功能。P0口是數(shù)據(jù)口,數(shù)據(jù)經(jīng)74LS245驅(qū)動后接LED的8個段碼;P2是地址口,分別與8個LED的位碼相連;P3口做通用I/O口和鍵盤相連,其中P3.0~P3.3提供行線,P3.4~P3.7提供列線,共提供12個鍵碼;P1口占用了2根I/O口線,P1.0輸出一個開關量開鎖,此處用發(fā)光二極管模擬;P1.7控制蜂鳴器,作為報警信號。時鐘電路由XLAT1、XLAT2構成,晶振頻率為12MHz。復位電路由RST生成。
數(shù)碼管選用的是Proteus元件庫中的標準數(shù)碼管,是7段共陰藍色數(shù)碼管,其中段碼接74LS245的輸出端,高電平有效;位碼接P2口,低電平有效。
3.3軟件設計
程序總體結構采用的是查詢方式,通過不斷的查詢鍵值輸入來判斷密碼的正確與否。程序設計了12個鍵值,分別是0~9十個數(shù)字鍵,ENTER確認鍵,CLR清除鍵。程序初始化時要設置初始密碼,之后就等待鍵的輸入。如果首次輸入的是CLR鍵或ENTER鍵,發(fā)出報警信息;每輸入一個鍵,保存鍵值并左移一位;當6位鍵值輸完,按ENTER鍵,進行密碼比較,正確則P1.0輸出一個高電平信號,錯誤則顯示錯誤提示信息,并發(fā)出報警信號。流程如圖2所示。
4仿真運行
程序編制完成后,可進行仿真運行。這里采用的是KEIL和Proteus的聯(lián)合調(diào)用方式。方法是打開KEIL,調(diào)出工程文件,在PROJECT選項下打開Options for target,找到DEBUG選項,選中Proteus項,保證“use remote debug monitor”項被選中,然后編譯調(diào)試程序。調(diào)試時可利用各種單步調(diào)試命令或斷點命令執(zhí)行源代碼窗口的程序,并隨時通過CPU的各種窗口,如寄存器、變量窗口等觀察程序每指令執(zhí)行是否正常。若有問題,可在源代碼窗口中隨時修改。
調(diào)試完成后運行程序,可看到密碼鎖的運行結果,如圖3所示。當有鍵值輸入時,LED顯示密碼“—”,輸入正確時,發(fā)光二極管亮;輸入錯誤時,LED顯示錯誤信息并發(fā)出報警提示。
5結論
Proteus仿真軟件為單片機課程實驗的改革和創(chuàng)新提供了平臺。它不存在原材料消耗和儀器件損壞等問題,豐富的元器件和儀器庫等資源不僅可以幫助學生更快、更好地掌握單片機的基本概念和原理,也使學生的綜合設計能力和創(chuàng)新能力得到了培養(yǎng),這是傳統(tǒng)實驗教學無法做到的。相信Proteus仿真軟件在教學中的廣泛應用,會使單片機課程的教學質(zhì)量上一個新臺階。本文的工作得到天津大學“本科實驗教學改革與研究”項目的支持,在此表示感謝。
參考文獻:
[1] 任琴,陳振威.淺談Proteus軟件與實踐教學[J].電腦知識與技術:學術交流,2007(17):1477-1478.
[2] 袁鋒偉,趙立宏,朱慧玲,等.基于Proteus的單片機課程教學與實驗改革[J].實驗室研究與探索,2007,26(12):75-78.
[3] 張靖武,周靈彬. 單片機系統(tǒng)的PROTEUS設計與仿真[M]. 北京:電子工業(yè)出版社,2007.
[4] 李廣弟,朱月秀,王秀山.單片機基礎(修訂本)[M]. 北京:北京航空航天大學出版社,2001.
The Application of Proteus Simulation Software in Single-chip Experiment Teaching
WU Ye-lan, DUAN Zhen-gang, QIAO Ji-hong, SU Wei-jun
(Computer & Information Engineering College, Beijing Technology and Business University, Beijing 100048, China)
Abstract: Proteus simulation software provides a new method of simulation teaching for single-chip experiments. The paper introduces a simulation design of 51 single-chip and its peripherals by Proteus. Hardware principal diagram、software flow chart and execution result are given. The test result shows that compared with traditional test method, Proteus simulation is live and intuitionist and cost saving. It suits to single-chip experiment teaching.
Key words: Proteus software; simulation software; single-chip experiment