趙月靜,陳繼榮
(河北科技大學機械電子工程學院,河北石家莊 050018)
項目驅動教學法在“單片機原理及應用”課程中的應用
趙月靜,陳繼榮
(河北科技大學機械電子工程學院,河北石家莊 050018)
在分析“單片機原理及應用”課程教學目前存在的問題基礎上提出了項目驅動教學法,給出了項目驅動教學法具體的實施方法、過程以及項目的設計具體內容,并通過Proteus和Keil軟件來給出具體的項目,展示了項目驅動教學法的優點。
項目驅動教學法;單片機;課程
由于單片機的實踐性很強,所以在應用項目驅動教學法的教學過程中必須理論知識和實踐相結合,把理論知識點融入到每次的項目設計中,而且要軟、硬件結合,將單片機程序和外圍電路相結合。因此在項目中采用Proteus軟件作為硬件電路原理圖的繪制軟件,Keil用來編寫程序。用Proteus進行軟、硬件的仿真。
在教學過程中,根據要講授單片機的硬件資源及擴展,按照項目應用到的理論知識點來設計相應的項目。每個項目設計中包括9部分:項目名稱、項目的目的、所用理論知識點撥、項目的硬件電路圖及仿真、軟件編程(包括匯編語言或C語言,重點講授C語言,因為各大企業用的比較多)、項目注意事項、動手實踐焊接電路板、示例、項目拓展。在項目的實施過程中,既學到理論知識,又理論聯系實際,使學生明白單片機中這些硬件資源的使用方法及應用場合。
針對學校的單片機課程,共設計11個項目。分別是:1)定時器/計數器;2)中斷源;3)串行通信;4)I/O接口;5)I/O 接口擴展;6)鍵盤接口;7)顯示器接口擴展;8)數據采集轉換系統;9)步進電機的控制(步進電機驅動);10)直流電機的控制(直流電機驅動);11)交通信號燈的控制(模擬交通燈)。這些項目涵蓋了單片機中的所有硬件資源及擴展的方法,軟件學習貫穿于每個項目中。通過這些項目的實施,學生對單片機的軟、硬件及應用都有很好的實踐,提升了學生的綜合應用能力。
單片機是一門注重應用的課程,這門課最終目的還是在于開發應用系統。因此在課程結束時的考核階段讓學生設計一個綜合完整的單片機應用系統,把以前相對獨立的各個項目綜合起來,鍛煉學生單片機控制系統的設計能力。具體措施如下。
1)選擇合適的課題 教師向學生推薦若干個單片機應用系統課題,學生根據自己的能力選擇其中一個課題,或者和指導老師一起確定實用課題。如果課題比較大,可以把幾個學生合成一個項目組,共同完成一個課題,學生的動手能力得到鍛煉,同時也培養了學生的配合、溝通能力。
2)整個項目的設計與調試 這種方式讓學生熟悉單片機應用系統的研制步驟和方法,學生從分析系統入手,經過總體設計-硬件系統-軟件系統-仿真調試-固化程序等整個流程,對每一個階段都有更加深刻的認識,對單片機應用系統的開發系統也有一定的了解。學生自己設計硬件電路、軟件程序,自己進行電路焊接和軟、硬件的綜合調試,并最終焊接電路板,完成作品實物。老師隨時根據學生需求進行輔導,幫助學生解決自己無法克服的難題。
3)作品的驗收及點評 學生整理材料,做出整個開發過程的PPT,老師根據學生在項目分組中的表現和所承擔的任務,對作品進行點評,并給出學生的成績等級。
熟悉掌握單片機內的硬件資源定時器和計數器的使用方法,達到會應用的程度,并利用制作定時器、計數器電路,進行硬件設計和軟件編程。
1)定時器/計數器 80C51系列單片機內有2個16位可編程的定時器或加1計數器:TH0,TL0,TH1,TL1占用4個字節,它們具有4種工作方式:方式0,方式1,方式2,方式3。其控制字和狀態字均在相應的特殊功能寄存器TMOD和TCON中,通過對控制寄存器編程可以方便地選擇適當的工作方式。工作在定時器或計數器及工作方式是通過TMOD來選擇,TCON用來設定定時器/計數器的運行控制位——啟動或停止、溢出標志位。
2)定時初值的計算 作為定時器是每隔1個機器周期TL0中內容加1,每隔一個機器周期計數1次,定時時間除以機器周期就是要計的數。要計的數按位(位數和工作方式有關)求反函數再加1,即做求補運算,就是定時器的初值。
3)定時器/計數器中斷 當計數計滿后溢出就會發生中斷。用作計數器時,計數脈沖來自外部引腳T0(T1),外部輸入的計數脈沖的最高頻率為振蕩頻率的1/24。
4)利用計數器擴展外部中斷 若工作設定計數初值為滿量程,計數器加1就溢出,發生中斷,把外部中斷接到T0引腳。
利用Proteus和Keil仿真軟件,可以根據所應用的元器件模型和外圍電路模型,使用Proteus仿真軟件設計原理圖,畫出項目的硬件電路圖,使用Keil仿真軟件對其進行編程調試,利用Proteus ISIS與Keil C的聯調來仿真系統及其外圍硬件電路的運行狀況[4-5]。具體情況略。
鼠標右鍵單擊工程名稱,在彈出的快捷菜單中選擇option for target‘target 1’。再在彈出的對話框中的debug選項卡中選中load application at start,選擇use keil monitor-51 drive.
注意的問題:1)初始化編程,確定工作在定時器還是計數器,設定工作方式,裝入初值,啟動計數器,打開中斷;2)初值的計算需要注意工作方式,位數。
例1 設單片機晶振頻率為12 MHz,使用定時器1以方式0產生周期為500μs的方波脈沖,并由P1.7輸出,采用查詢和中斷2種方式。用匯編語言和C語言2種方式編程,比較二者的優缺點。
首先根據題意要求進行初始化,求初值,機器周期 MC=fosc/12=1μs,計數個數:250/1=250=FAH,初值=1F06H。
在Proteus中畫出硬件電路圖,即單片機最小系統+示波器接在P1.7上,如圖1所示(定時器功能)。
程序如下。


圖1 硬件電路圖設計Fig.1 Design of hardware circuit



項目驅動教學法克服了傳統教學呆板、被動的缺點,充分調動了學生的思維,讓學生在學習過程中發現問題、思考問題、解決問題,變被動學習為主動學習。學生還可以在課外獨立設計、驗證自己的系統,有助于培養學生的創新素質和創造能力。
項目驅動教學法的特點是以學生為中心,以真實項目為基礎,以培養學生的實際操作技能和團隊精神為目標,在整個過程中學生能獲取理論知識和實踐知識。所以在“單片機原理及應用”課程教學中,只要項目選材合適,材料準備充分,注意好過程控制,就一定會收到較好的效果。
[1]陳 慧,饒成明.Proteus仿真軟件在單片機項目教學中的應用[J].現代企業教育,2009(6):56-57.
[2]王曉榮,權義萍,張印強.基于C語言的“單片機”教學方法[J].中國電力教育,2009(6):96-97.
[3]張 齊,朱寧西.單片機應用系統設計技術[M].北京:電子工業出版社,2009.
[4]殷士勇.Keil和Proteus在單片機實驗教學中的應用[J].重慶工商大學學報(自然科學版),2009,26(6):567-570.
[5]許 超,吳新杰,張 丹.基于Proteus和Keil的單片機課程教學改革[J].遼寧大學學報(自然科學版),2011,38(1):27-29.
Application of project teaching method in the study of single chip microcontroller principle and use
ZHAO Yue-jing,CHEN Ji-rong
(College of Mechanical Engineering,Hebei University of Science and Technology,Shijiazhuang Hebei 050018,China)
Project teaching method(PTM)is presented for the problems that exists in the study of single chip microcontroller principle and use.The application method,the process and the content of the project about the PTM are put forward.An example of the project is given in detail by Proteus and Keil software.
project teaching method;single chip microcontroller;curriculum
G642
A
1008-1534(2012)04-239-04
2012-04-26
馮 民
河北科技大學理工學院教育教學研究資助項目(2010Y28);河北科技大學機械工程學院教育教學研究資助項目
趙月靜(1974-),女,河北安國人,副教授,碩士,主要從事單片機原理及應用、機械控制工程基礎方面的教學與研究。