鄭祥明,孔晨鑫,李泰
(亳州學(xué)院 電子與信息工程系,安徽 亳州 236800)
微機原理課程是電子信息類、自動化和電氣工程等工科專業(yè)的重要專業(yè)基礎(chǔ)課之一,在人才培養(yǎng)體系中占據(jù)重要地位,具有較強的理論性、實踐性與應(yīng)用性,更是工科學(xué)生在未來工作中必備的基本實踐技能。該課程的學(xué)習(xí)理念對后續(xù)專業(yè)課程的學(xué)習(xí),甚至是工程創(chuàng)新能力的培養(yǎng)有重要影響[1]。在電子信息類專業(yè)中,微機原理課程是單片機技術(shù)和嵌入式系統(tǒng)等課程的先修課程,微機原理與接口技術(shù)的教學(xué)效果的提升對后續(xù)課程的開展具有非常重要的意義[2]。傳統(tǒng)的微機原理與接口技術(shù)課程單純的以“理論為主,實驗為輔”的方式授課,為提高課程的教學(xué)質(zhì)量,文獻[3]在理論教學(xué)、實驗教學(xué)和考核方式上進行探索,在一定程度上提高了教學(xué)效果,但是由于實驗室資源的限制實驗效果仍有不足。隨著虛擬仿真技術(shù)的發(fā)展,英國Labcenter公司開發(fā)的Proteus實現(xiàn)了基于8086微處理器的VSM仿真,為課程教學(xué)提供了比較理想的虛擬仿真實驗教學(xué)平臺,利用Proteus仿真軟件在一定程度上取得了良好的教學(xué)成果[4-8]。虛擬仿真技術(shù)彌補了實驗資源不足,實現(xiàn)了對傳統(tǒng)實驗教學(xué)的有益補充,但是由于虛擬仿真與物理實驗的差異,文獻[9]指出了X86在8259實驗中出現(xiàn)的問題并給出了解決方案,進一步破解了實驗地點和時間方面的難題。目前在中國工程教育認證背景下,文獻[10]在成果導(dǎo)向教育理念下深入課程教學(xué)改革,激發(fā)學(xué)生的學(xué)習(xí)興趣,提高學(xué)習(xí)效果。微機原理與接口技術(shù)課程改革與時俱進,且取得了豐碩的成果,而新建地方本科院校存在基礎(chǔ)薄弱,教學(xué)經(jīng)驗不足的情況,如何在新時代背景下充分利用新建地方本科院校自身特點,指導(dǎo)學(xué)生高效地學(xué)習(xí)仍是教學(xué)改革的難點。
目前,大多微機原理教程以8086CPU 芯片為平臺,教學(xué)內(nèi)容的組織和實施是以匯編語言為開發(fā)語言,以傳統(tǒng)的接口芯片進行系統(tǒng)擴展等。課程內(nèi)容包含微型計算機工作原理和常用接口技術(shù)兩部分:微型計算機的工作原理部分從微機的內(nèi)部結(jié)構(gòu)進行剖析并結(jié)合指令系統(tǒng)逐步引導(dǎo)學(xué)生了解16位和32位微處理器及匯編語言程序設(shè)計,具有理論性強、內(nèi)容抽象和不易理解的特點。常用接口技術(shù)部分以可編程中斷控制器8259A、可編程并行接口8255A 和可編程計數(shù)器/定時器8253等接口芯片培養(yǎng)和引導(dǎo)學(xué)生掌握微機系統(tǒng)軟、硬件開發(fā)基本能力。針對課程教學(xué)過程中存在開發(fā)平臺芯片老舊,匯編語言不是當(dāng)下的主流開發(fā)語言且晦澀難懂等問題影響學(xué)生學(xué)習(xí)的積極性[1],因此根據(jù)教學(xué)內(nèi)容和章節(jié)特點適當(dāng)改變教學(xué)方法可以取得事半功倍的效果。筆者結(jié)合微機原理課程特點在教學(xué)過程實施“1+2+2”教學(xué)改革,探索以理論指導(dǎo)實驗,以實驗驅(qū)動理論教學(xué)。同時在實踐教學(xué)環(huán)節(jié)采用“以虛為主,虛實結(jié)合”的教學(xué)改革與實踐,提高學(xué)生課堂參與度,提高課程教學(xué)質(zhì)量。
微機原理在專業(yè)人才培養(yǎng)中具有承上啟下的重要作用,教學(xué)目標(biāo)和教學(xué)設(shè)計等教學(xué)全過程都將影響課程的教學(xué)效果。圍繞課程的基本教學(xué)目標(biāo),引導(dǎo)學(xué)生掌握微機系統(tǒng)的基本電路、存儲器、時鐘系統(tǒng)和常用接口電路等,同時融入創(chuàng)新能力培養(yǎng)理念,提升學(xué)生的學(xué)習(xí)興趣,并且培養(yǎng)學(xué)生的創(chuàng)新思維。為此,本方案在課程大綱制定的過程中充分考慮與前導(dǎo)課程和后續(xù)課程之間的聯(lián)系,并根據(jù)微型計算機工作原理和常用接口技術(shù)兩部分的教學(xué)特點探索“1+2+2”教學(xué)改革方案。即,課程教學(xué)全過程圍繞1個核心處理器8086,根據(jù)課程內(nèi)容和章節(jié)特點適當(dāng)選擇“以理論為輔”和“以實驗為主”2種教學(xué)方法,并在實踐教學(xué)環(huán)節(jié)中設(shè)置的實驗任務(wù)要求使用“實驗箱+軟件仿真”2 種實現(xiàn)方案,如圖1所示。
圖1 課程培養(yǎng)路線圖
微機原理課程內(nèi)容主要圍繞8086處理器進行,即實現(xiàn)對8086 處理器的操作及外圍擴展電路的控制。教學(xué)基本思路是:為了實現(xiàn)對處理器的操作,首先要了解8086內(nèi)部的結(jié)構(gòu)、寄存器和存儲器結(jié)構(gòu)及其工作原理,以理論為主重點介紹二進制加法電路、微機基本組成電路和基本工作原理等內(nèi)容;其次是了解8086CPU 等硬件資源,掌握指令和程序設(shè)計思想,以實驗為主引入算術(shù)運算指令、邏輯運算指令和程序設(shè)計基礎(chǔ)知識;最后為了實現(xiàn)更大規(guī)模的系統(tǒng)設(shè)計和外設(shè)的控制,以實踐應(yīng)用為主逐步引入中斷技術(shù)、定時器/計數(shù)器、輸入輸出和接口技術(shù)等。
實驗教學(xué)是理論應(yīng)用與實踐的重要環(huán)節(jié),主要培養(yǎng)學(xué)生的動手能力、實踐能力和創(chuàng)新能力。本方案設(shè)計的實驗任務(wù)包含基礎(chǔ)實驗任務(wù)和拓展實驗任務(wù),基礎(chǔ)實驗任務(wù)是理論教學(xué)的補充和強化,引導(dǎo)學(xué)生更好地理解和掌握理論知識,進而進行知識遷移,培養(yǎng)學(xué)生解決較復(fù)雜問題的能力,基礎(chǔ)實驗任務(wù)安排如表1所示。
表1 基礎(chǔ)實驗任務(wù)
表1中的基礎(chǔ)實驗任務(wù)根據(jù)理論課程內(nèi)容先后順序安排,由于實驗課時有限,方案設(shè)計了部分第二課堂實驗任務(wù)對第一課堂進行補充和完善。同時,為強化學(xué)生的實踐能力和應(yīng)用能力,設(shè)置了拓展實驗任務(wù),拓展實驗任務(wù)是基礎(chǔ)實驗任務(wù)的鞏固和提高,具有一定的開放性、綜合性和創(chuàng)新性,具體實驗任務(wù)如表2所示。
表2 拓展實驗任務(wù)
1) 第二課堂與第一課堂銜接
為了彌補第一課堂實驗任務(wù)存在綜合性和創(chuàng)新性不足的情況,實驗教學(xué)環(huán)節(jié)增加了第二課堂的實驗任務(wù),指導(dǎo)老師通過給學(xué)生發(fā)放實驗任務(wù)書,指導(dǎo)學(xué)生在課下獨立完成實驗任務(wù)并要求學(xué)生提交工程文件、源代碼和設(shè)計報告等過程性材料。拓展實驗任務(wù)部分也可以由學(xué)生自擬題目,經(jīng)指導(dǎo)老師同意后即可同步進行實施,在課程規(guī)定時間內(nèi)完成實驗任務(wù)并集中匯報考評。
2) 虛實結(jié)合,以虛為主
硬件實驗和虛擬仿真實驗都是實踐教學(xué)的重要組成部分,硬件實驗?zāi)軌蛑庇^、具體地反映實驗現(xiàn)象,有助于培養(yǎng)學(xué)生的動手實踐能力和硬件設(shè)計能力。虛擬仿真實驗反映的是理想狀態(tài)下的實驗現(xiàn)象,具有實驗平臺易搭建、實驗成本低、不受實驗室條件影響等優(yōu)勢。
實踐教學(xué)方案中的基礎(chǔ)實驗任務(wù)部分采用微機原理實驗箱和Proteus 仿真軟件同時實現(xiàn),以表1 中8255并行接口實驗為例:首先,在軟件設(shè)計部分,學(xué)生需根據(jù)實驗任務(wù)書編寫程序;其次,在硬件設(shè)計環(huán)節(jié),學(xué)生需要按實驗任務(wù)要求連接導(dǎo)線,然后進行程序調(diào)試;最后,認真檢查軟硬件配置,當(dāng)沒有實現(xiàn)預(yù)期效果時則需要逐項(程序、硬件電路)排除故障,直至實驗完成。整個調(diào)試過程,尤其是硬件電路調(diào)試經(jīng)驗是虛擬仿真無法實現(xiàn)的,學(xué)生畢業(yè)以后要解決的也是具體的工程實際問題。因此,完備的實驗室條件和硬件實驗是首先要保證的,而虛擬仿真實驗突破了空間和時間的限制,為學(xué)生提供了更多的實驗機會,對整個實踐教學(xué)環(huán)節(jié)是有利的。所以,本方案采用的以虛為主、虛實結(jié)合的實驗方式,為學(xué)生提供了全方位的實踐教學(xué)平臺,滿足了實踐教學(xué)的需求。
3) 任務(wù)驅(qū)動,理實一體
實驗任務(wù)的設(shè)計是與教學(xué)內(nèi)容密切相關(guān)的,把教學(xué)大綱中涉及的知識點、技能目標(biāo)凝聚為若干典型實驗任務(wù),在理論課學(xué)習(xí)的過程中實施以學(xué)生為主、教師為輔的方式引導(dǎo)學(xué)生完成實驗任務(wù),在任務(wù)的執(zhí)行過程中理解和掌握理論教學(xué)內(nèi)容。表1 中的實驗任務(wù)對標(biāo)教學(xué)大綱的知識點,任務(wù)的設(shè)置與課程內(nèi)容同步,通過有序的組織和實施實驗教學(xué)任務(wù)引導(dǎo)逐步學(xué)習(xí)和掌握課程的知識架構(gòu)。
在方案執(zhí)行的過程中融合了Proteus 仿真實驗環(huán)境的優(yōu)勢,在教學(xué)的各個環(huán)節(jié)設(shè)置相應(yīng)的任務(wù)模塊,以任務(wù)牽引理論教學(xué),在執(zhí)行任務(wù)的過程中學(xué)習(xí)和掌握課程的核心內(nèi)容,有利于激發(fā)學(xué)生的學(xué)習(xí)興趣,為后續(xù)的單片機、嵌入式等課程奠定了良好的軟硬件開發(fā)初級技能。
為簡化軟件設(shè)計和調(diào)試過程,本項目選用的是Proteus8.6,打開軟件主界面,選擇Source Code 然后在System→Compilers Configuration 界面選擇下載安裝MASM32 即可使用Proteus 自帶的匯編編譯器。新建工程文件時選擇Create Firmware Project,處理器選擇8086,編譯器選擇MASM32。在Schematic Capture 界面完成相應(yīng)原理圖設(shè)計,在Source Code界面進行匯編語言程序設(shè)計。
掌握可編程中斷控制器8259A、可編程計數(shù)/定時控制器8253、可編程DMA 控制器8237A 和可編程并行接口芯片8255A等接口技術(shù)是本課程的重點內(nèi)容。筆者結(jié)合教學(xué)實際設(shè)計基于Proteus的交通燈系統(tǒng),該系統(tǒng)利用可編程計數(shù)/定時控制器8253 進行定時、利用8255A進行終端接口控制、利用8259A中斷控制器設(shè)計自動控制模式和手動應(yīng)急控制模式增加系統(tǒng)的實用性。
系統(tǒng)以8086CPU 為控制核心,通過74LS373 鎖存器和138譯碼電路分別與8253、8255A和8259A連接,8253 負責(zé)交通燈系統(tǒng)的計時,8255A 的A 口控制LED交通燈,8259A 的IR0 和IR1 用于系統(tǒng)應(yīng)急模式控制,設(shè)計如圖2所示。
軟件設(shè)計之前首先要求學(xué)生查閱相關(guān)接口芯片、鎖存器及譯碼電路的工作原理,尤其是接口芯片的控制字選擇和工作方式選擇等。本系統(tǒng)配置8255A 工作在方式0;A 口輸出控制LED 燈;B 口輸出控制數(shù)碼管顯示倒計時時間;C口PC6配置為輸入,用于模式選擇;配置8253 在計數(shù)器0 方式3;配置8259A 為單片、邊沿觸發(fā)中斷、非自動結(jié)束、非緩沖和全嵌套方式。程序主流程圖如圖3所示,其中交通燈正常工作子程序為:東西方向紅燈亮,南北方向綠燈亮9秒,黃燈閃爍3秒→南北方向紅燈亮,東西方向綠燈亮9秒,黃燈閃爍3秒。
圖3 主程序流程圖
程序設(shè)計好后可直接在軟件中編譯運行,如果編譯有錯誤按提示修改代碼即可。本項目運行狀態(tài)如圖4所示。
圖4 交通燈模擬效果圖
文章從教學(xué)實際出發(fā),結(jié)合微機原理課程特點在教學(xué)過程實施“1+2+2”教學(xué)改革,探索以理論指導(dǎo)實驗,以實驗驅(qū)動理論教學(xué),同時在實踐教學(xué)環(huán)節(jié)采用“以虛為主,虛實結(jié)合”的教學(xué)改革實踐研究,通過“虛實結(jié)合”的實踐教學(xué)改革拓展了學(xué)生的學(xué)習(xí)空間,提高學(xué)生課堂參與度,引導(dǎo)學(xué)生主動學(xué)習(xí)、主動實踐,有利于激發(fā)學(xué)生的學(xué)習(xí)興趣,培養(yǎng)學(xué)生的實踐創(chuàng)新能力,對后續(xù)專業(yè)課程的實施產(chǎn)生了積極影響。