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