任艷焱
(赤峰學(xué)院計(jì)算機(jī)與信息工程學(xué)院,內(nèi)蒙古赤峰024000)
單片機(jī)教學(xué)改革的研究
任艷焱
(赤峰學(xué)院計(jì)算機(jī)與信息工程學(xué)院,內(nèi)蒙古赤峰024000)
“單片機(jī)(MCU)原理與自動(dòng)控制”是一門偏重工程應(yīng)用的課程,很多高等學(xué)校只是把它作為選修課并且為本課程安排的學(xué)時(shí)數(shù)較少.要想在這樣的情況下取得較好的教學(xué)效果,就得采取行之有效的教學(xué)方法.這就需要在傳統(tǒng)的教學(xué)方法上進(jìn)行改革.
實(shí)踐;Proteus;Keil;C51;匯編
近年來(lái),嵌入式技術(shù)已經(jīng)逐步滲入到人們的工作和生活的各個(gè)方面,成為了生活環(huán)境中不可或缺的一部分.單片機(jī)就屬于嵌入式計(jì)算機(jī).在單片機(jī)的教學(xué)上要著眼于學(xué)生考試成績(jī)較好、而動(dòng)手能力較差的情況進(jìn)行改革.本文將針對(duì)這些問(wèn)題對(duì)現(xiàn)有的傳統(tǒng)教學(xué)方法進(jìn)行研究,把單片機(jī)技術(shù)所用到的知識(shí)串連起來(lái),不斷更新該課程的教學(xué)內(nèi)容、改進(jìn)教學(xué)手段以及增加實(shí)踐環(huán)節(jié),通過(guò)理論聯(lián)系實(shí)際來(lái)提高學(xué)生的學(xué)習(xí)積極性,從而提高學(xué)生分析問(wèn)題、解決問(wèn)題的能力[1].
迄今為止,在很多高等院校里單片機(jī)課程的教學(xué)采用的是傳統(tǒng)的教學(xué)模式,即首先在教室里講授理論部分,再讓學(xué)生在單片機(jī)實(shí)驗(yàn)室完成相應(yīng)的實(shí)驗(yàn),其中理論部分所占的學(xué)時(shí)數(shù)較多.
現(xiàn)在很多學(xué)校的單片機(jī)實(shí)驗(yàn)室,大都是以單片機(jī)實(shí)驗(yàn)箱為實(shí)踐教學(xué)平臺(tái),學(xué)生做實(shí)驗(yàn)的內(nèi)容比較固定.以實(shí)驗(yàn)箱作為單片機(jī)教學(xué)平臺(tái)有其不足的地方,比如對(duì)于剛接觸單片機(jī)的學(xué)生來(lái)說(shuō)很難熟悉單片機(jī)實(shí)驗(yàn)箱的構(gòu)成.若想自己設(shè)計(jì)實(shí)驗(yàn)線路,又受到實(shí)驗(yàn)箱的限制.因?yàn)閷?shí)驗(yàn)箱里的各個(gè)電子器件、元器件的接線圖、電路原理圖、程序清單等都是生產(chǎn)廠家設(shè)計(jì)好的,所有的硬件程序已固化在程序存儲(chǔ)器EEPROM中,學(xué)生做實(shí)驗(yàn)時(shí)只能按照實(shí)驗(yàn)箱設(shè)計(jì)好的電路連線,按照實(shí)驗(yàn)箱既定的原理圖編寫程序進(jìn)行驗(yàn)證,這種方法影響了學(xué)生的學(xué)習(xí)興趣和信心,不能發(fā)揮學(xué)生的想像力和創(chuàng)造力[2].
現(xiàn)今各高校的單片機(jī)教學(xué)大多是以一個(gè)由簡(jiǎn)單到復(fù)雜逐步深入的過(guò)程,主要從單片機(jī)的基本結(jié)構(gòu)入手,再講述指令系統(tǒng)、匯編語(yǔ)言、定時(shí)/計(jì)數(shù)器、中斷系統(tǒng)、鍵盤接口電路,然后是各種不同類型的應(yīng)用系統(tǒng).由于單片機(jī)的實(shí)踐性很強(qiáng),所以就需要教師在課堂上設(shè)置一定氛圍的教學(xué)情境,采取板書和多媒體相結(jié)合的授課方式,使學(xué)生更直觀地看到單片機(jī)的各種功能、內(nèi)部結(jié)構(gòu)、應(yīng)用實(shí)例、調(diào)試方法以及完整的開發(fā)流程.在講授過(guò)程中要基本上涵蓋單片機(jī)技術(shù)中的相關(guān)知識(shí)點(diǎn),著重在課程的重點(diǎn)、難點(diǎn)內(nèi)容上適當(dāng)?shù)靥岢鼍哂袉l(fā)性的問(wèn)題,將學(xué)習(xí)情境、學(xué)習(xí)任務(wù)融進(jìn)課堂教學(xué),引起學(xué)生積極思考,從而提高學(xué)生的學(xué)習(xí)積極性;同時(shí)結(jié)合日常生活中能用到相關(guān)知識(shí)的地方向?qū)W生提供重要信息,要讓學(xué)生清楚所講授內(nèi)容的意義和作用,如何與實(shí)際系統(tǒng)相結(jié)合,激發(fā)學(xué)生的興趣,進(jìn)而引導(dǎo)學(xué)生主動(dòng)思考,而不是簡(jiǎn)單地告訴學(xué)生相應(yīng)的結(jié)論.鼓勵(lì)學(xué)生大膽表達(dá)自己的想法,拓展分析問(wèn)題、解決問(wèn)題的思路.[3]把一個(gè)具體的單片機(jī)應(yīng)用系統(tǒng)實(shí)物拿到課堂上,讓學(xué)生對(duì)實(shí)際的應(yīng)用系統(tǒng)有一個(gè)直接認(rèn)識(shí).
通過(guò)引入仿真軟件Proteus和Keil,并采用機(jī)房教學(xué)來(lái)彌補(bǔ)傳統(tǒng)教學(xué)方法的不足,從而培養(yǎng)學(xué)生的動(dòng)手能力以及系統(tǒng)開發(fā)能力.
Proteus軟件是一種EDA工具軟件,它是由英國(guó)Labcenterelectronics公司開發(fā)的.它不但可以仿真其它的EDA工具軟件,還可以仿真單片機(jī)以及它的外圍器件電路,例如可以仿真51系列、AVR,PIC等常用的MCU及其外圍器件電路.它是一款將電路仿真軟件、PCB設(shè)計(jì)軟件和虛擬模型仿真軟件三合一的設(shè)計(jì)平臺(tái),實(shí)現(xiàn)了從概念到產(chǎn)品的完整設(shè)計(jì),無(wú)論從原理圖布圖、代碼調(diào)試還是到單片機(jī)與外圍電路協(xié)同仿真,一鍵切換到PCB設(shè)計(jì)都很理想,是迄今為止此類工具中性能較優(yōu)越的一種.其處理器模型支持8051、HC11、AVR、ARM、8086和MSP430等,2010年又增加了Cortex和DSP系列處理器,并在不斷地增加其他系列處理器模型.在編譯方面,它也支持IAR、Keil和MPLAB等多種編譯器.在用戶中反響較好.
為了培養(yǎng)學(xué)生設(shè)計(jì)電路的能力,可以利用Proteus軟件將虛擬仿真技術(shù)和計(jì)算機(jī)多媒體授課相結(jié)合;將Proteus仿真軟件應(yīng)用到教學(xué)中,先設(shè)計(jì)大量的單片機(jī)應(yīng)用實(shí)例,用Proteus軟件向?qū)W生演示單片機(jī)軟硬件設(shè)計(jì)開發(fā)、調(diào)試的全過(guò)程,并觀察硬件的工作和程序執(zhí)行效果,使學(xué)生通過(guò)實(shí)例對(duì)單片機(jī)的工作原理、工作過(guò)程、工作效果有更多的了解,學(xué)生普遍覺(jué)得不需要投入硬件設(shè)施,就能很好地掌握單片機(jī)的知識(shí).實(shí)踐證明,利用這種方法可以很大程度上提高單片機(jī)系統(tǒng)的設(shè)計(jì)速率[4].
目前,世界上出現(xiàn)的幾種用于51系列的單片機(jī)開發(fā)軟件,他們的基本功能大同小異,公認(rèn)的效率高且使用方便的集成開發(fā)環(huán)境是德國(guó)Keil公司的μVision3IDE,它是Windows下的集成開發(fā)環(huán)境,可模擬51系列單片機(jī)及派生產(chǎn)品的片內(nèi)部件,支持軟件模擬和用戶系統(tǒng)實(shí)時(shí)調(diào)試2種功能.在這個(gè)環(huán)境下可以完成編輯、匯編、編譯、仿真和調(diào)試等整個(gè)開發(fā)流程.它主要提供了包括C51編譯器、A51宏匯編器、LIB51庫(kù)管理器、BL51連接/定位器. Keil支持匯編、C語(yǔ)言及混合編程,能夠在不接硬件電路的情況下直接仿真用戶程序,或者利用硬件仿真器,通過(guò)連接單片機(jī)硬件電路,在仿真器中裝載目標(biāo)程序后進(jìn)行實(shí)時(shí)仿真.
在單片機(jī)課堂教學(xué)中,使用Proteus和Keil構(gòu)建起個(gè)人的單片機(jī)虛擬仿真設(shè)計(jì)仿平臺(tái),教師在講述完理論部分后,可在多媒體教室里利用Proteus設(shè)計(jì)相關(guān)的硬件電路,再用Keil軟件編寫、編譯和修改調(diào)試程序,測(cè)試驗(yàn)證,最后得到仿真結(jié)果.使學(xué)生真正從原理上理解單片機(jī)的工作過(guò)程,以及單片機(jī)系統(tǒng)設(shè)計(jì)方法,提升教學(xué)效果[4].
利用Proteus和Keil構(gòu)建虛擬實(shí)驗(yàn)室首先需要安裝Proteus和Keil軟件,其次利用Proteus繪制硬件電路,根據(jù)需要搭建各種虛擬儀器儀表;再用Keil編寫匯編源程序,最后設(shè)置Keil和Proteus之間的接口;在Keil里對(duì)匯編源程序進(jìn)行編譯連接后進(jìn)行程序調(diào)試,并且在Proteus里的虛擬儀表里觀測(cè)實(shí)驗(yàn)結(jié)果、記錄實(shí)驗(yàn)數(shù)據(jù).
在單片機(jī)的教學(xué)中引入Proteus和Keil仿真軟件,彌補(bǔ)了理論和應(yīng)用之間相互脫節(jié)的不足.這種單片機(jī)教學(xué)的改革方法,在實(shí)際教學(xué)過(guò)程中取得了一些初步的成果.使學(xué)生產(chǎn)生濃厚的學(xué)習(xí)興趣,提高了教學(xué)效果.但Proteus仿真不能完全代替實(shí)物,在實(shí)際應(yīng)用中需要將其和實(shí)驗(yàn)設(shè)備相結(jié)合,進(jìn)一步鍛煉學(xué)生的綜合開發(fā)能力[5].
目前,國(guó)內(nèi)各高等院校采用的單片機(jī)教材,多數(shù)采用的開發(fā)語(yǔ)言學(xué)是匯編語(yǔ)言.雖然說(shuō)匯編語(yǔ)言具有運(yùn)行效率較高的優(yōu)點(diǎn),可以直接控制硬件內(nèi)部.但是它的缺點(diǎn)也很顯著主要表現(xiàn)在依賴目標(biāo)單片機(jī)的硬件結(jié)構(gòu),可移植性不高,指令系統(tǒng)枯燥難懂.
用C語(yǔ)言代替?zhèn)鹘y(tǒng)的匯編語(yǔ)言編寫單片機(jī)源程序,可解決匯編語(yǔ)言的上述缺點(diǎn).51系列單片機(jī)的C語(yǔ)言軟件開發(fā)系統(tǒng)KeilC51是美國(guó)Keil Software公司出品的,C語(yǔ)言在功能上、結(jié)構(gòu)性、可讀性、可維護(hù)性上比傳統(tǒng)的匯編語(yǔ)言有明顯的優(yōu)勢(shì),簡(jiǎn)單易學(xué).尤其是那些用過(guò)匯編語(yǔ)言編程的用戶再使用C語(yǔ)言來(lái)編程的,更能體會(huì)出它的優(yōu)越性來(lái).KeilC51軟件是全Windows界面,可提供豐富的庫(kù)函數(shù)和功能強(qiáng)大的集成開發(fā)調(diào)試工具.再者,只要看一下編譯后生成的匯編代碼,就能體會(huì)到KeilC51生成的目標(biāo)代碼效率非常之高,多數(shù)語(yǔ)句生成的匯編代碼非常緊湊,易懂易用.在開發(fā)大型軟件時(shí)更能體現(xiàn)出C語(yǔ)言的優(yōu)勢(shì)[6].
通過(guò)上述單片機(jī)教學(xué)方法的研究,目的在于改變傳統(tǒng)教學(xué)方式,優(yōu)化教學(xué)內(nèi)容,提高學(xué)生對(duì)單片機(jī)的學(xué)習(xí)興趣,提高動(dòng)手能力,使之更符合高等院校的基本學(xué)情,為學(xué)生以后應(yīng)用單片機(jī)解決實(shí)際問(wèn)題打下良好的基礎(chǔ).
〔1〕胡漢才.單片機(jī)原理及其接口技術(shù)[M].北京:清華大學(xué)出版社,2004.
〔2〕李朝青.單片機(jī)原理及接口技術(shù)[M].北京:北京航空航天大學(xué)出版社,2008.
〔3〕李華.MCS-51系列單片機(jī)實(shí)用接口技術(shù)[M].北京:北京航空航天大學(xué)出版社,1993.
〔4〕劉映群.Proteus與Keil整合構(gòu)建單片機(jī)虛擬實(shí)驗(yàn)室[J].中國(guó)現(xiàn)代教育裝備,2005(8).
〔5〕肖燕.單片機(jī)實(shí)踐課程教改策略[J].湖南農(nóng)機(jī), 2009,36(6):99-100.
〔6〕王幸之.單片機(jī)應(yīng)用系統(tǒng)抗干擾技術(shù)[M].北京:北京航空航天大學(xué)出版社,2001.
G642.0
A
1673-260X(2013)11-0197-02
赤峰學(xué)院學(xué)報(bào)·自然科學(xué)版2013年21期