單片機原理課程是電子信息科學與技術、機械設計制造及其自動化專業的必修課,從學生平時上課的表現和考試的結果,以及學生走上工作崗位后反饋的情況來看,筆者學校的單片機原理課程教學存在著一些不足之處。為響應學校創建省級示范應用型本科院校的號召,全面提高學校的辦學質量和辦學水平,2008年,筆者學校對單片機原理課程的教學進行了探索性的改革。
一、單片機原理課程教學存在的問題
1.編程語言掌握不牢
多年來,單片機原理課程教學都是以匯編語言為主。從每屆學生考試的結果來看,學生對匯編語言部分的知識掌握得不好。而對于單片機原理這樣以培養學生產品設計應用能力為主要教學目標之一的課程來說,編程語言掌握不好,對單片機原理的掌握自然無從談起。匯編語言是低級語言,僅是機器指令的簡單符號化,寄存器使用相對高級的語言,操作繁雜,并且要求學生具有一定的硬件基礎知識,學生顯然在短時間內難以完全掌握。
2.教學模式單一
目前大多數高校的理論教學過程都采用先基礎后應用的模式,即單片機硬件結構—指令系統—匯編語言設計—外部系統擴展—接口技術和應用系統設計。這種模式雖然思路清晰,但是存在著過于機械化的弊端,缺乏生動、直觀的輔助教學手段,讓學生覺得學習單片機枯燥乏味,沒有現實意義,缺乏興趣,嚴重影響了教學效果。同時,實踐教學形式單一且受重視程度不夠。當前的實踐課教學大多以單片機實驗箱為實驗平臺,而開設的也多為驗證性實驗。通過觀察我們不難發現,學生在做實驗時大都是用實驗指導書上已經寫好的程序資料,沒有多少同學會去分析程序的流程,更不用說去研究、讀懂那些代碼了。另外,對于用到電路硬件的實驗,學生也只是按實驗指導書的要求在實驗箱上做簡單的連線,沒有一個整體的電氣原理圖的概念,再加上實驗條件有限,不可能每個同學都得到老師的輔導,因此導致學生過度追求實驗結果,而忽略了硬件設計、軟件調試等過程。
3.課程內容滯后
單片機教學都是以8031或MCS-51為例來進行的,多年來基本沒有變化。而實際上單片機已經發展出了很多品種,即使是51系列的單片機的種類也是非常豐富的,比如有內置看門狗、PWM、SPI和A/D、D/A等類型。但是學生們對此卻知之甚少。
二、單片機原理課程理論教學改革
1.多媒體教學和傳統教學模式相結合
隨著大學教育教學改革的深入,多媒體教學將更加廣泛地應用于各個教育教學領域。傳統教學是以課堂教學為主、以教師為中心的教學,而對單片機原理這種實踐性較強的課程來說,傳統的教學方法顯然難以充分調動學生學習的積極性。多媒體教學是通過計算機技術、網絡技術、多媒體技術和現代教學方法進行的教學活動,集文字、圖像、聲音、視頻影像、動畫等各種信息于一體,教學更加形象、直觀和生動。例如通過豐富的網絡資源,同學們能夠了解當前有關單片機的新書訊、新技術、新信息和相關領域的內容,了解單片機應用和發展的現狀。又如在每章節的最后,教師可以把網絡上具有代表性的和應用性的問題搬到課堂上,組織學生進行討論和分析,使在課堂上學習到的知識能和實際應用聯系在一起。這樣就可以引導學生學會搜集和消化網絡上的有關資源,學會查閱單片機廠家提供的芯片技術資料,為將來自己進行軟硬件設計打下基礎。
2.在匯編語言教學中引入標準C語言
鑒于匯編語言不容易掌握,教師在講授完單片機原理硬件結構、指令系統和匯編語言程序設計章節之后,可引入單片機標準C語言的教學內容。其內容主要包括C的基本語法、C的數據結構、C的存儲結構和C的流程控制等知識要點,并且在講解的過程中,教師要注意將其與匯編語言作對比,幫助學生理解二者在端口和中斷等定義上的不同。學生在了解單片機硬件結構的基礎上,理解C的數據結構、存儲結構與單片機硬件結構的相互對應關系。此外,在學習的過程中,要讓學生認識到C語言相對匯編語言的優點,如可讀性、可維護性好,便于維護和調試以及代碼重用和移植等。通過匯編語言和C語言進行對照的教學模式,學生可以很快地掌握單片機原理應用的編程,這無疑對后期的學習大有益處。
3.引入單片機最常用的開發工具Keil C51
集成電路的發展使得單片機的性能不斷提高,應用領域日益廣闊,單片機編譯調試工具也在不斷完善。最常用的開發工具Keil C51是由美國Keil Software公司出品的51系列兼容單片機C語言軟件開發系統,Keil C51軟件提供豐富的庫函數和功能強大的集成開發調試工具,全Windows界面,同時隨著Windows版本的更新不斷完善,而最重要的一點是Keil C51生成目標代碼的效率非常高,多數語句生成的匯編代碼很緊湊,容易理解。
在操作的軟件系統界面圖中,窗口標題欄下緊接著是菜單欄,菜單欄下面是工具欄。工具欄下面的左邊是項目管理器窗口,在該窗口既可以查看項目的文件情況,也可以查看程序執行時寄存器的實時值J。在管理器窗口的右邊是編輯窗口,它的下面是命令窗口和各種輸出信息窗口,對于這些窗口可以通過視圖菜單( View)下面的命令打開或關閉。
在引入標準C語言的基礎上,為了使學生畢業走向社會后,能夠更快地適應企業單片機相關產品的開發,我們又引導學生掌握此開發平臺的使用方法,為他們今后開展工作打下了一個很好的基礎。
三、單片機原理課程實踐教學改革
1.變革傳統的實驗模式
我們嘗試改變了傳統實驗過程中以驗證性為主的實驗模式:指導教師僅提供實驗的方向,學生根據實驗目的和要求提前預習,自己到圖書館或者網上查閱相關資料,設計實驗方案,編寫相關的實驗程序;在實驗中遇到問題,可與小組成員討論解決,最后得到實驗結果;根據自己的實驗過程撰寫實驗報告,包括實驗中遇到的問題以及提出解決方案。同時,教師也可以組織學生間進行交流,對各組實驗結果與報告展開分析和討論,從而提高學生的研究能力和科學實驗能力。
2.充分利用課外時間
單片機原理課程的課外教學也是實踐教學中很重要的一個組成部分,而不僅僅是實驗教學的一個補充。事實上,學生可以通過組織興趣小組、參與教師的科研等多種方式進行課外學習。例如筆者學校團委和科技處組織學生申報研究性學習項目,這在很大程度上激發了學生的創新精神,強化了他們的實踐能力和獨立解決實際問題的能力。另外,單片機課程任課老師也適當地對學生課外學習進行指導,針對學生感興趣的研究方向,提供參考書目,引導學生了解最新動態、把握研究方向,與學生展開討論;同時鼓勵學生走出學校,參加各種嵌人式系統講座和校內外組織的各種跟單片機相關的競賽活動,開闊視野,逐步增長、培養自己的研究能力和創新能力。
四、結論
在單片機課程理論教學環節和實踐環節中引入新的內容和方法,是否提高了學生們對這門課的學習興趣和熱情呢?我們設計了單片機原理課程評價調查表,來檢驗學生們對課程改革教學的認可度。我們分別對05級和06級共計280名學生進行了問卷調查,統計得出的結果是05級122名學生評出的分數平均分為88.36,06級158名學生給出的平均分是90.02。通過學生們對改革后的單片機原理課程教學的評價可以看出,該課程并非那么難學,只要教師采用合理的教學方法,通過多種手段,提高學生的學習興趣,教學效果就一定能夠得到不斷提升。
(作者單位:河北省邢臺技師學院)