黃 忠,劉 娟,張 杰
(安慶師范學(xué)院 物理與電氣工程學(xué)院,安徽 安慶 246133)
?
Proteus在《微機(jī)原理與接口技術(shù)》實(shí)驗(yàn)教學(xué)中的應(yīng)用
黃忠,劉娟,張杰
(安慶師范學(xué)院 物理與電氣工程學(xué)院,安徽 安慶 246133)
摘要:針對(duì)《微機(jī)原理與接口技術(shù)》實(shí)驗(yàn)教學(xué)的諸多問(wèn)題,闡述了通過(guò)Proteus仿真軟件進(jìn)行實(shí)驗(yàn)教學(xué)的新思路。以并行接口芯片8255A的仿真實(shí)例,說(shuō)明了Proteus實(shí)驗(yàn)仿真的基本過(guò)程。實(shí)踐表明,基于Proteus實(shí)驗(yàn)仿真方法不僅能夠克服硬件實(shí)驗(yàn)箱結(jié)構(gòu)固定、資源有限等缺點(diǎn),還能加深學(xué)生對(duì)課程知識(shí)點(diǎn)的理解和調(diào)動(dòng)學(xué)習(xí)積極性,從而進(jìn)一步提高實(shí)驗(yàn)教學(xué)效果。
關(guān)鍵詞:Proteus仿真; 8255A; 8086; 實(shí)驗(yàn)教學(xué)
《微機(jī)原理與接口技術(shù)》是計(jì)算機(jī)、電子信息及電氣類(lèi)專業(yè)的一門(mén)專業(yè)基礎(chǔ)課程。其教學(xué)目的是使學(xué)生從理論上樹(shù)立微機(jī)系統(tǒng)的整體概念,并掌握微機(jī)的基本組成、工作原理、匯編語(yǔ)言程序設(shè)計(jì)、接口電路及硬件連接等基本知識(shí)點(diǎn);同時(shí)使學(xué)生從實(shí)踐上具有微機(jī)系統(tǒng)的軟硬件開(kāi)發(fā)能力。通過(guò)課后與學(xué)生們交流發(fā)現(xiàn),學(xué)生對(duì)8086系統(tǒng)中內(nèi)存擴(kuò)展、I/O接口芯片與CPU的連接、某些I/O接口芯片工作方式等內(nèi)容普遍難以掌握。而《微機(jī)原理與接口技術(shù)》實(shí)驗(yàn)教學(xué)則是將課程理論教學(xué)中難學(xué)、抽象的知識(shí)形象化、具體化,一方面進(jìn)一步加深學(xué)生對(duì)微機(jī)結(jié)構(gòu)、匯編語(yǔ)言及各種指令系統(tǒng)等知識(shí)的理解,提高學(xué)生學(xué)習(xí)興趣;另一方面讓學(xué)生對(duì)計(jì)算機(jī)內(nèi)部原理和一些芯片的工作流程有更直接的感性認(rèn)識(shí),幫助學(xué)生克服畏難情緒[1]。本文探討了Proteus在《微機(jī)原理與接口技術(shù)》實(shí)驗(yàn)中的應(yīng)用方法,并以并行接口芯片8255A的仿真實(shí)例說(shuō)明了其仿真過(guò)程。
1微機(jī)原理實(shí)驗(yàn)教學(xué)現(xiàn)狀分析
《微機(jī)原理與接口技術(shù)》實(shí)驗(yàn)主要分為匯編語(yǔ)言程序設(shè)計(jì)和接口電路實(shí)驗(yàn)兩部分。由于匯編語(yǔ)言等知識(shí)在相關(guān)前導(dǎo)課程中已經(jīng)學(xué)習(xí),這門(mén)課在匯編語(yǔ)言程序設(shè)計(jì)的基礎(chǔ)上更偏重于接口電路的設(shè)計(jì)和應(yīng)用。目前接口電路實(shí)驗(yàn)主要是通過(guò)硬件實(shí)驗(yàn)箱如TPC-H的操作來(lái)完成。然而,這種方式存在著如下限制。
(1)創(chuàng)新限制。由于實(shí)驗(yàn)箱的芯片、線路多已固定,實(shí)驗(yàn)開(kāi)設(shè)項(xiàng)目有限,一般只能開(kāi)展驗(yàn)證性實(shí)驗(yàn),學(xué)生很難參與實(shí)驗(yàn)中的細(xì)節(jié)設(shè)計(jì)和擴(kuò)展設(shè)計(jì),限制了學(xué)生的想象力,導(dǎo)致學(xué)生學(xué)習(xí)的積極性不高。
(2)時(shí)空限制。傳統(tǒng)的實(shí)驗(yàn)需要在專業(yè)實(shí)驗(yàn)室中進(jìn)行,但由于實(shí)驗(yàn)箱數(shù)量少和維護(hù)難等原因,實(shí)驗(yàn)室開(kāi)放資源受到限制,學(xué)生難以在實(shí)驗(yàn)課前進(jìn)行準(zhǔn)備工作。
(3)經(jīng)費(fèi)限制。實(shí)驗(yàn)箱價(jià)格貴、易損壞,一方面需要花費(fèi)經(jīng)費(fèi)以維護(hù)舊設(shè)備,另一方面需要增置新設(shè)備以滿足日益變化的實(shí)驗(yàn)內(nèi)容。
難以擴(kuò)展的實(shí)驗(yàn)箱、有限的實(shí)驗(yàn)經(jīng)費(fèi)和陳舊的實(shí)驗(yàn)項(xiàng)目等諸多因素制約了硬件實(shí)驗(yàn)的開(kāi)展和限制了學(xué)生學(xué)習(xí)的創(chuàng)新性思維。隨著計(jì)算機(jī)技術(shù)在硬件和軟件方面的飛速發(fā)展,研究者開(kāi)始探索計(jì)算機(jī)仿真技術(shù)在諸如電子電路等實(shí)際工程中的應(yīng)用。Proteus軟件于2009年上半年推出了Proteus VSM for 8086平臺(tái),提供了8086與8255,8253,8251和8259等芯片的仿真支持。因此,可以將此軟件引入到8086接口技術(shù)的實(shí)驗(yàn)教學(xué)中,以加深學(xué)生對(duì)理論知識(shí)的理解和掌握[2]。
2基于Proteus的微機(jī)原理實(shí)驗(yàn)教學(xué)設(shè)計(jì)
Proteus軟件是由英國(guó)Labcenter公司開(kāi)發(fā)的一款嵌入式系統(tǒng)設(shè)計(jì)與仿真平臺(tái)。Proteus軟件由ISIS和ARES 2個(gè)軟件包構(gòu)成,ISIS是原理圖編輯與仿真軟件包,ARES是布線編輯軟件包[3]。Proteus強(qiáng)大的設(shè)計(jì)與仿真功能被廣泛應(yīng)用在數(shù)字電路、模擬電路、單片機(jī)和嵌入式系統(tǒng)等多門(mén)課程的教學(xué)和實(shí)驗(yàn)中。
微機(jī)原理實(shí)驗(yàn)由軟件和硬件兩大部分構(gòu)成。軟件就是匯編語(yǔ)言程序設(shè)計(jì),以往的實(shí)驗(yàn)通常采用Emu8086軟件[4]在PC上進(jìn)行程序編寫(xiě)和調(diào)試,滿足了實(shí)驗(yàn)教學(xué)的需求。硬件部分以接口技術(shù)硬件系統(tǒng)設(shè)計(jì)和應(yīng)用為中心,是整門(mén)課程的重點(diǎn),它包括存儲(chǔ)器系統(tǒng)設(shè)計(jì)、I/O編址、I/O接口芯片的控制方式及其與CPU的連接等,涉及中斷控制器8259A、可編程定時(shí)器/計(jì)數(shù)器芯片8253、可編程并行接口芯片8255A、可編程的串行接口芯片8251A、以及A/D和D/A轉(zhuǎn)換器ADC0809,DAC0832等。
圖1基于Proteus仿真的實(shí)驗(yàn)項(xiàng)目
傳統(tǒng)的接口電路實(shí)驗(yàn)是在實(shí)驗(yàn)箱上完成的,拓展性不強(qiáng),效果不好。為了提高實(shí)驗(yàn)課的教學(xué)效果,讓學(xué)生自己參與整個(gè)電路的設(shè)計(jì),加深理解芯片的工作原理和結(jié)構(gòu),在實(shí)驗(yàn)室基于Proteus軟件仿真設(shè)計(jì)出多種實(shí)驗(yàn)項(xiàng)目或課程設(shè)計(jì),如圖1所示。通過(guò)Proteus軟件仿真方式,一方面在實(shí)驗(yàn)課上教師可以有針對(duì)性地對(duì)各芯片的硬件連線和軟件控制方法進(jìn)行展示,給學(xué)生直觀認(rèn)知,激發(fā)學(xué)生學(xué)習(xí)熱情;另一方面,通過(guò)實(shí)驗(yàn)教學(xué),提高學(xué)生對(duì)知識(shí)點(diǎn)拆分和綜合分析能力,培養(yǎng)學(xué)生創(chuàng)新能力。
3仿真實(shí)例
Proteus ISIS 8086的仿真包括三個(gè)步驟:(1)Protues仿真電路的設(shè)計(jì),(2)匯編語(yǔ)言程序的編寫(xiě)和編譯,(3)仿真調(diào)試。下面以基于8086和8255A的“按鍵與數(shù)碼管顯示”實(shí)驗(yàn)為例進(jìn)行說(shuō)明[5]。
設(shè)計(jì)要求:8255A的A口接4個(gè)開(kāi)關(guān)K3~K0,B口的7位接一個(gè)七段LED顯示器。當(dāng)開(kāi)關(guān)都合上,K3K2K1K0=0000時(shí)顯示0,到開(kāi)關(guān)都斷開(kāi),K3K2K1K0=1111時(shí),顯示F,共有16種狀態(tài),顯示16進(jìn)制數(shù)0,1,…,F。
3.1Protues仿真電路的設(shè)計(jì)
原理圖設(shè)計(jì)如圖2所示,使用8255A的基本輸入輸出功能,A口接4個(gè)開(kāi)關(guān),B口7位接一個(gè)七段LED顯示器。通過(guò)A口讀開(kāi)關(guān)狀態(tài)并用七段LED顯示器顯示。通過(guò)該圖可以清晰地向?qū)W生解釋8086工作在最小模式時(shí)的引腳和功能。使用74LS373芯片作為地址鎖存器,地址信號(hào)的A1,A2接8255A的A0,A1位,其它地址信號(hào)經(jīng)過(guò)74LS138后作為8255A片選信號(hào)。通過(guò)分析可知,4個(gè)端口的地址分別為F0H,F(xiàn)2H,F(xiàn)4H和F6H[6]。
圖2仿真電路圖
3.2匯編語(yǔ)言程序的編寫(xiě)和編譯
打開(kāi)Emu8086軟件,新建com文件,輸入以下代碼:
; A口地址
PROTA EQU 0F0H
; B口地址
PROTB EQU 0F2H
; C口地址
PROTC EQU 0F4H
; 控制口地址
CONTROL EQU 0F6H
DATA SEGMENT
; 0~F的七段代碼編碼
TABLE DB 40H,79H,24H,30H,19H,12H,02H,78H
DB 00H,18H,08H,03H,43H,21H,06H,0EH
DATA ENDS
CODE SEGMENT
ASSUME CS:CODE,DS:DATA
START: MOV AX,DATA
MOV DS,AX
MOV DX,CONTROL
;A口工作方式0,輸入,B口方式0,輸出
MOV AL,90H
OUT DX,AL
IN_PORTA: MOV DX,PROTA
;讀A口(讀按鍵信息)
IN AL,DX
;取低4位
AND AL,0FH
LEA BX,TABLE
;查表
XLAT
MOV DX,PROTB
OUT DX,AL
;延時(shí)
MOV CX,10000
L1:NOP
LOOP L1
;繼續(xù)讀開(kāi)關(guān),顯示
JMP IN_PORTA
;返回DOS
MOV AX,4C00H
INT 21H
CODE ENDS
END START
3.3仿真調(diào)試
上述代碼編譯生成com文件后,導(dǎo)入到8086芯片中。導(dǎo)入方法:在Proteus軟件界面中雙擊8086器件,在彈出的對(duì)話框中把生成的該com文件添加給8086。運(yùn)行后,會(huì)出現(xiàn)圖3所示的結(jié)果。改變開(kāi)關(guān)狀態(tài),LED顯示器上顯示不同的數(shù)字,實(shí)現(xiàn)了例子的設(shè)計(jì)要求。
圖3仿真結(jié)果圖
4結(jié)束語(yǔ)
本文以8086和8255A的并行接口擴(kuò)展電路仿真為例,說(shuō)明了Proteus軟件在《微機(jī)原理與接口技術(shù)》實(shí)驗(yàn)教學(xué)中的應(yīng)用。用Proteus進(jìn)行8086接口電路仿真,一方面學(xué)生需要清晰地理解接口芯片的工作原理和端口尋址,才能完成實(shí)驗(yàn)所需的仿真電路設(shè)計(jì),從而可以直接地表現(xiàn)大量的教學(xué)信息,讓學(xué)生參與到實(shí)驗(yàn)設(shè)計(jì)的細(xì)節(jié),激發(fā)學(xué)生學(xué)習(xí)的興趣;另一方面仿真實(shí)驗(yàn)節(jié)約了大量昂貴的實(shí)驗(yàn)儀器費(fèi)用,打破了實(shí)驗(yàn)開(kāi)設(shè)的時(shí)間和空間限制,給學(xué)生更多實(shí)踐和鍛煉的機(jī)會(huì),為實(shí)踐性教學(xué)帶來(lái)了很大的靈活性。還值得一提的是,除了教師可借助Proteus軟件進(jìn)行實(shí)驗(yàn)教學(xué)外,學(xué)生也可以在課程設(shè)計(jì)、電子設(shè)計(jì)競(jìng)賽和畢業(yè)設(shè)計(jì)等方面應(yīng)用此仿真平臺(tái)。
參考文獻(xiàn):
[1] 張小紅.微機(jī)原理與接口技術(shù)實(shí)驗(yàn)教學(xué)改革探討[J].中國(guó)教育技術(shù)裝備,2012(21):113-115.
[2] 李現(xiàn)國(guó),張艷.Proteus仿真在微機(jī)原理及接口技術(shù)教學(xué)中的應(yīng)用[J].實(shí)驗(yàn)技術(shù)與管理,2012,27(12):125-127.
[3] 吉向東,李新鄂.基于Proteus的微機(jī)原理實(shí)驗(yàn)仿真[J].信息技術(shù),2010(2):36-39,44.
[4] 谷兆麟.基于EMU8086的微機(jī)系統(tǒng)的輔助學(xué)習(xí)方法[J].天津工程師范學(xué)院學(xué)報(bào),2006,16(4):26-27,30.
[5] 顧暉,梁惺彥.微機(jī)原理與接口技術(shù)——基于8086和Proteus仿真[M].北京:電子工業(yè)出版社,2012:131-137.
[6] 周荷琴,馮煥清.微型計(jì)算機(jī)原理與接口技術(shù)[M].合肥:中國(guó)科學(xué)技術(shù)大學(xué)出版社,2013:221-223.
Application of Proteus in Experiment Teaching of Microcomputer Principle and Interface Technique
HUANG Zhong, LIU Juan, ZHANG Jie
(Institute of Physics and Electrical Engineering, Anqing Teachers College, Anqing 246133,China)
Abstract:Aiming at many problems in process of experiment teaching of microcomputer principles and interface technique, this paper discusses the idea of experiment teaching based on Proteus simulation. Taking the simulating of peripheral interface 8255A as an example, we illustrate the basic process of Proteus simulation. The practice proves that the method can not only overcome the disadvantages of the fixed hardware experiment instruments and limited resources, but also deepen the students' comprehension of curriculum knowledge and mobilize the students' enthusiasm to study, and enhance the effect of experiment teaching further.
Key words:Proteus simulation, 8255A, 8086, experiment teaching
文章編號(hào):1007-4260(2015)02-0130-04
中圖分類(lèi)號(hào):TP368.1
文獻(xiàn)標(biāo)識(shí)碼:A
作者簡(jiǎn)介:黃忠,男,安徽岳西人,博士生,安慶師范學(xué)院物理與電氣工程學(xué)院講師,研究方向?yàn)榍楦杏?jì)算與機(jī)器視覺(jué)。
收稿日期:2014-10-23