江蘇 張紅霞
基于項目導(dǎo)向的單片機實踐教學(xué)設(shè)計的實踐與思考
江蘇 張紅霞
單片機近年來是使用最簡單、應(yīng)用最普遍的嵌入式智能芯片,被廣泛用于儀器儀表、自動控制、通信和家用電器等領(lǐng)域。目前各類高職院校都開設(shè)了該課程。本文針對目前高職教育中單片機實踐教學(xué)的特點及存在的問題,提出了基于項目導(dǎo)向的教學(xué)方法,提倡將仿真技術(shù)用于單片機課程實訓(xùn)中,激發(fā)學(xué)生的學(xué)習(xí)興趣,培養(yǎng)學(xué)生的動手能力,提高教學(xué)質(zhì)量。
項目導(dǎo)向;單片機;實踐教學(xué);Proteus;Keil
引言
隨著計算機及其相關(guān)技術(shù)的發(fā)展,單片機在工業(yè)控制中的機電一體化系統(tǒng)、電氣自動化控制系統(tǒng)、嵌入式系統(tǒng)以及智能儀表、家用電器等方面的應(yīng)用不斷深入,對高職學(xué)生單片機技術(shù)及應(yīng)用能力的要求越來越高,單片機技術(shù)也成為機電一體化、電子技術(shù)應(yīng)用、電氣自動化等專業(yè)的重要課程。該課程涉及數(shù)字電路、模擬電路、計算機語言等多方面知識。單片機不像傳統(tǒng)電子線路那樣直觀,它是一門軟硬件相結(jié)合的技術(shù)。學(xué)生既要懂單片機的硬件結(jié)構(gòu),又要懂軟件編程,必須具備這兩方面的準(zhǔn)備知識,才能很好的理解單片機的工作過程。通過學(xué)習(xí),不僅使學(xué)生掌握單片機技術(shù)的基本理論、開發(fā)設(shè)計的基本方法,而且要全面培養(yǎng)學(xué)生分析系統(tǒng)、設(shè)計系統(tǒng)的能力,培養(yǎng)學(xué)生對單片機、嵌入式系統(tǒng)再學(xué)習(xí)的能力,為本專業(yè)后續(xù)有關(guān)知識和課程的學(xué)習(xí)打下良好的基礎(chǔ)。
該課程是一門理論性與實踐性相結(jié)合的課程。通過課程的教學(xué)和實踐,既要使學(xué)生初步掌握有關(guān)單片機、嵌入式的基本概念,理解單片機的硬件結(jié)構(gòu)及接口技術(shù),對單片機系統(tǒng)的組成、原理、應(yīng)用及開發(fā)設(shè)計過程從整體上有一個清晰的認(rèn)識;還要使學(xué)生掌握單片機仿真開發(fā)系統(tǒng)的應(yīng)用,掌握單片機應(yīng)用系統(tǒng)軟、硬件的調(diào)試開發(fā)方法;了解簡單的單片機C語言程序的結(jié)構(gòu)特點和編譯過程,熟練使用仿真軟件進行系統(tǒng)的設(shè)計與仿真。但目前教學(xué)中還存在以下幾個問題:
傳統(tǒng)的單片機理論教學(xué),均是按照教材的內(nèi)容以單片機的結(jié)構(gòu)為主線,按單片機的內(nèi)部結(jié)構(gòu)、指令系統(tǒng)、軟件編程、單片機的中斷系統(tǒng)、各種外圍設(shè)備接口電路的順序來講授,最后再對應(yīng)用系統(tǒng)做簡單介紹。這樣的教學(xué)模式,側(cè)重了課程本身的理論邏輯體系,但對于理論基礎(chǔ)和理解能力較差的高職學(xué)生來講感覺抽象,難以理解,更談不上應(yīng)用?,F(xiàn)有的教材或偏重于理論教學(xué),或僅側(cè)重于實踐能力培養(yǎng)而忽略系統(tǒng)的基本知識的掌握,缺乏符合理實一體、學(xué)做合一的系統(tǒng)的課程教學(xué)資源。
目前很多院校在做單片機實驗時,往往采用高度集成的實驗箱,不僅學(xué)校在資金投入上花費很大,而且學(xué)生實驗中的效果也不太理想。因為現(xiàn)有的實驗箱硬件電路固定,實驗內(nèi)容難改動,學(xué)生做實驗時只需連接幾根導(dǎo)線,然后輸入相關(guān)程序,最后等待觀看實驗結(jié)果。實驗基本以驗證性的實驗為主,設(shè)計性、綜合性、啟發(fā)性的實驗較少,各個實驗之間幾乎沒有什么聯(lián)系,學(xué)生只是片面地掌握某一方面知識,不能將整體內(nèi)容貫穿起來,實驗項目已經(jīng)越來越無法滿足教學(xué)和實際需求。
傳統(tǒng)的單片機課程考核方法主要采用以卷面理論考試為主,其余結(jié)合一定比例的平時成績。由于實驗成績只作為占比例較小的平時成績記入,這種考核辦法不能全面反映學(xué)生對該課程的掌握情況,尤其是學(xué)生的應(yīng)用能力、動手能力和創(chuàng)新能力很難從試卷上反映出來。學(xué)生的實際應(yīng)用能力不能得到客觀的反映,違背了高職教育培養(yǎng)應(yīng)用型、技能型人才的目標(biāo)。
基于以上情況,結(jié)合多年的教學(xué)經(jīng)驗,筆者提出了基于項目導(dǎo)向的單片機實踐教學(xué)設(shè)計,將單片機的理論知識圍繞項目展開分解,融合到不同的實訓(xùn)項目中,引導(dǎo)學(xué)生邊做邊學(xué),在實踐中完成知識的學(xué)習(xí)。
以項目為導(dǎo)向的單片機實踐教學(xué),打破課堂教學(xué)按教材章節(jié)順序進行的方式,改為按預(yù)先設(shè)計的實驗項目任務(wù)所需來安排教學(xué)內(nèi)容,項目能夠涵蓋所有知識點,充分體現(xiàn)了“理論服務(wù)于實踐”的思想。教師首先根據(jù)教學(xué)大綱要求的知識點,設(shè)計出有針對性的實訓(xùn)項目。然后圍繞項目來確立教學(xué)目標(biāo),確定出每個項目包含的教學(xué)重點,設(shè)計與教材各部分內(nèi)容相適應(yīng)的實驗內(nèi)容,并編寫出所配套的講義和實驗指導(dǎo)書。
項目由淺入深,循序漸進,由簡單的基本項目逐步過渡到復(fù)雜的綜合項目,通過比較項目之間的聯(lián)系與區(qū)別,讓學(xué)生更好地掌握知識。例如在介紹流水燈程序這一項目時,我們剛開始學(xué)習(xí)時可以使用簡單的延時程序。在講到定時計數(shù)器時,我們可以使用定時器設(shè)定流水點亮的延時時間間隔。當(dāng)講到中斷技術(shù)時,我們可以讓學(xué)生嘗試使用中斷程序來完成流水點亮的效果。通過這一系列具有連貫性的項目,我們可以將不同的知識點融會貫通,使學(xué)生在完成的項目過程中體會到成就感,獲得激勵,產(chǎn)生興趣。在所有基礎(chǔ)項目完成后,以完成一些貼近日常生活且具有實用性綜合應(yīng)用項目(如交通燈、數(shù)字溫度計等)來檢驗學(xué)生的學(xué)習(xí)效果,真正做到學(xué)以致用。
?
針對課程“實踐難”的特點,我們使用Proteus和Keil仿真軟件搭建的實驗虛擬平臺幾乎不作任何硬件投資,就能獲得一個非常真實的實驗環(huán)境。Proteus帶有大量的庫元件和仿真儀器及分析工具,因此可以隨意更改硬件電路圖,克服了用實驗箱硬件固定的問題。通過選擇不同類型的芯片,學(xué)生能夠緊跟市場步伐,學(xué)習(xí)到最先進的技術(shù),彌補了實驗器材不足的問題。學(xué)生不用到實驗室,不用花時間和金錢購買元器件,就可以自己設(shè)計硬件電路,將程序載入仿真系統(tǒng)后驗證自己設(shè)計的電路和程序的正確性。利用軟件仿真,學(xué)生不需要任何的硬件連線程序修改,編譯后馬上就可以看到效果。學(xué)生通過仿真實驗熟悉了單片機系統(tǒng)的開發(fā)方法,對進一步培養(yǎng)學(xué)生的綜合分析能力,排除故障能力和開發(fā),創(chuàng)新能力具有重要意義。
Proteus ISIS是英國Labcenter公司開發(fā)的電路設(shè)計、分析與仿真軟件。功能極其強大,該軟件的主要特點是:①可以完成從繪制原理圖、仿真分析到生成印刷電路板圖的整個硬件開發(fā)過程。②提供幾千種電子元件、分立元件和集成電路、模擬和數(shù)字電路的電路符號、仿真模型和外形封裝③支持大多數(shù)單片機系統(tǒng)以及各種外圍芯片的仿真④提供各種虛擬儀器,如各種測量儀表、示波器、邏輯分析儀、信號發(fā)生器等。⑤支持第三方的軟件編譯和調(diào)試環(huán)境,可與Keil C51μVision2等軟件進行聯(lián)調(diào)。
Keil軟件是目前最流行的開發(fā)MCS-51系列單片機軟件,近年來各仿真機廠商紛紛宣布全面支持Keil。Keil支持匯編語言和C語言的程序設(shè)計,易學(xué)易用。
基于項目導(dǎo)向的單片機課程教學(xué)主要分為基礎(chǔ)知識教學(xué)、項目演示、項目實施、項目拓展四個階段。
1.基礎(chǔ)知識教學(xué)階段:由教師講授本項目相關(guān)的基礎(chǔ)知識,突出重點,提綱挈領(lǐng)。為了達到教學(xué)目的,提高教學(xué)效果,提倡教師提前給出教學(xué)項目的基本要求,引領(lǐng)學(xué)生有目的地進行預(yù)習(xí)。
2.項目演示階段:教師通過局域網(wǎng)廣播教學(xué),演示關(guān)鍵知識點的應(yīng)用實例,增加課堂信息量。對整個實驗過程及難點加以說明,這一階段可在仿真環(huán)境中讓學(xué)生看到系統(tǒng)最后運行的結(jié)果,提升學(xué)生參與實踐的欲望。
3.項目實施階段,讓學(xué)生自己動手獨立完成硬件電路圖的繪制、軟件程序的編寫、調(diào)試和驗證,并嘗試改變某些語句觀察運行結(jié)果,實現(xiàn)對相關(guān)知識點的應(yīng)用和創(chuàng)新能力的培養(yǎng)。本環(huán)節(jié)要求教師有較強的現(xiàn)場指導(dǎo)能力和課堂掌控能力。
4.項目拓展階段,鼓勵學(xué)生在完成教師布置的基礎(chǔ)實訓(xùn)項目后,自主設(shè)計題目,并完成調(diào)試工作。如:對源程序進行修改,完成自己設(shè)計的新功能。這個訓(xùn)練可以培養(yǎng)學(xué)生的勇于實踐、大膽創(chuàng)新的意識,培養(yǎng)學(xué)生應(yīng)用單片機綜合設(shè)計與開發(fā)系統(tǒng)的能力,為后面的綜合應(yīng)用技術(shù)的項目訓(xùn)練奠定基礎(chǔ)。
下面通過項目實例流水燈(廣告燈)來介紹如何在單片機教學(xué)中應(yīng)用Proteus和keil軟件實現(xiàn)仿真效果。首先,在Proteus軟件中繪制如圖1所示的硬件電路原理圖,然后,在keil軟件中根據(jù)項目要求編寫流水點亮LED的軟件程序,編譯成功后生成hex文件。最后,在電路圖中載入程序并運行程序,觀察仿真結(jié)果。程序設(shè)計是學(xué)生學(xué)習(xí)單片機的難點。在教學(xué)中,我們巧妙設(shè)計項目的每個階段,從簡單到復(fù)雜,讓學(xué)生在潛移默化中掌握技能。例如流水燈的項目層次分為3個階段:第一個階段讓學(xué)生編寫一個燈點亮的程序;第二個階段編寫一個燈閃爍的程序,利用在閃爍燈項目中學(xué)習(xí)到的延時子程序;第三個階段才完成8個燈流水點亮的程序;第四個階段完成8個燈分組流水點亮。當(dāng)達到第三個階段時,學(xué)生學(xué)習(xí)單片機的水平已經(jīng)可以完成一個簡單的項目。通過循序漸進的修改程序和電路圖,逐步實現(xiàn)功能由簡單到復(fù)雜的過渡,使學(xué)生更容易理解和掌握知識。
通過基于項目導(dǎo)向的單片機教學(xué)實踐,98%的學(xué)生掌握了運用仿真開發(fā)環(huán)境進行單片機應(yīng)用系統(tǒng)開發(fā)的過程,普遍反映對單片機結(jié)構(gòu)及工作原理有了更深的理解,課程的及格率達到99%。在較好完成本課程學(xué)習(xí)任務(wù)的同時,學(xué)生的自學(xué)能力、實踐能力、創(chuàng)新能力也得到不斷提高,收到了較好的教學(xué)效果。
實踐證明,讓學(xué)生帶著問題去學(xué)習(xí)和實驗,能夠提高自身主動思考和創(chuàng)造性思維能力;完善自身的知識體系,程序開發(fā)環(huán)節(jié)可實現(xiàn)看、聽、做、思、練的有機結(jié)合,鍛煉學(xué)生電路設(shè)計、程序調(diào)試、分析、解決問題的能力等各個方面的能力。學(xué)生通過主動參與和親自實踐,加深對新知識的理解?;陧椖繉?dǎo)向的在單片機實踐教學(xué)設(shè)計,有助于學(xué)生快速掌握知識,大大提高了教學(xué)效率,對單片機教學(xué)具有指導(dǎo)意義。
(作者單位:南通市廣播電視大學(xué))
(編輯 李艷華)