陳 朋 楊東勇
(浙江工業大學信息工程學院,浙江 杭州310023)
隨著電子技術的迅速發展,電子產品、智能手持設備和測控裝置等在日常生活中隨處可見。近年來,社會對從事單片機開發人才的需求也日趨增加。如當下流行的可穿戴設備(智能手環,智能手表等產品)通過藍牙4.0等方式與手機交互信息;工業應用的一些手持設備通過Wi-Fi或ZigBee等方式與其他設備交互信息,為降低開發成本,現在很多生產商已經推出了內嵌協議棧的芯片,如CC254X,CC31XX等系列。各大芯片生產商還推出了Cortex-M3、Cortex-M4架構的資源豐富又相對廉價的單片機芯片。單片機的不斷推陳出新,也促使著單片機原理課程教學內容需要跟住潮流。
由于單片機的廣泛應用,《單片機原理》作為國內外眾多高校的一門重點專業課程。該課程需要理論與實踐緊密結合,通常放在較高年級,等學生有一定軟件硬件功底之后再教學。然而,傳統教學方式學生往往只停留在課本上,教學的主要以51單片機居多,逐塊介紹單片機功能,使用匯編指令對寄存器操作,再結合一些驗證性試驗強化學習。這里存在的問題是教學內容不能及時更新,與主流公司相關芯片技術脫機比較嚴重,而且實驗方式和實驗手段比較陳舊,實驗內容與一些新的技術關系不密切。另外,在學習單片機原理課程前,大多數高校自動化、電子信息類等專業會安排C語言,微機原理等先行課程,單片機之后會安排嵌入式原理,DSP原理與應用等課程。以匯編語言為主的單片機教學,呈現和先行課程存在部分內容重復,和后續課程則脫節較大的問題。此外,不少高校的單片機課程都是以教師為主,學生被動接收,不能激發學生的學習興趣,甚至導致一些有興趣的學生還會因為這種枯燥的學習方式而產生逆反心理,失去興趣或信心[1]。單片機這類要求學生有較高動手能力的課程,采用傳統的期終筆試來確定成績的方式也存在弊端,無法衡量學生的實際水平。
針對上述問題,筆者結合多年單片機教學和嵌入式項目開發經驗,積極探索單片機原理教學方法改革,使用Cortex-M4內核的TM4C1294系列芯片作為授課載體,從匯編語言過渡到C語言,從寄存器操作過渡到調用庫函數,并編寫教案與實驗手冊,研發新實驗設備,通過豐富實例調動學生學習興趣,通過緊密結合實際項目的或各類課外科技競賽的簡化開放性實驗,強調學以致用,在資源豐富的多功能開發板上培養學生的動手能力與創新意識。
面對新的授課載體,教師采用新的教學思路,借鑒國際上先進的CDIO模式——構思(Conceive)、設計(Design)、實現(Implement)和運作(Operate)[2],以學生為中心,引導學生通過實踐主動地獲取知識,將獲取的新知識與已有認知結構聯系起來,讓學生在具體的問題情景中積極思考、主動探索,培養學生分析解決問題的綜合能力,提高教與學的效果[3]。我們采用了以下四個方面進行單片機原理教學:
作為一門理論緊密聯系實際的專業課程,教學的內容也需要及時更新,跟上社會需求,當學生看到所學知識在社會中確實有廣泛應用時,學習熱情自然被激發。
在講授單片機片外設備接口 (External Peripheral Interface,EPI)時,我們結合了多媒體設備的TFT彩屏顯示案例,學生面對的不再是傳統的寄存器配置以及復雜的TFT初始化,而是能在TFT上通過程序繪制各種圖形,甚至是動態正弦波,大大吸引了學生興趣。隨后講授同步串行接口SSI時,我們又在TFT顯示的基礎上增加了觸摸功能。學生通過簡單的初步調試,就能將TFT液晶屏,變成一塊手繪板,學習興趣自然大大提升。這種學有所得的感受,讓傳統枯燥的學習變成了“玩”單片機,提高了學習主動性和積極性。
在前期的課程中,大多數學生都已經學習過C語言、微機原理、模擬電路、數字電路等課程,也有相應的課程實驗,這些實驗或是在PC機上模擬,或是自己動手設計電路。單片機實驗作為一個綜合性試驗,進一步鞏固先前所學,在我們的實驗平臺上,搭載了TFT觸摸屏、SD卡、AD、DA、數碼管、LED燈、矩陣鍵盤、加速度計和紅外接收器等豐富的片外資源,以及通用的外設接口。學生可以重現先前課程所學,如C和匯編混合編程,EEPROM,FLASH的操作和數碼管的顯示等實驗,是對前期課程的綜合應用與鞏固。
各類課外科技競賽是培養和考驗學生綜合應用能力與創新能力的良好平臺,著重考核學生綜合運用基礎知識進行理論設計的能力、創新意識、獨立工作能力和實驗綜合技能[4]。筆者所在信息學院近年來學生參與常見課外科技競賽如 “全國大學生電子設計競賽”,“挑戰杯”,“飛思卡爾智能汽車比賽”,以及各大企業組織的一些競賽,幾乎都要用到單片機。這些競賽傳統的51單片機無論從資源還是從速度上,都已經跟不上。而TM4C1294系類單片機則以豐富的資源和較快的處理速度能滿足學生在課外科技競賽中的需求,不受資源限制。筆者也引入了開放綜合實驗,讓學生結合競賽要求,發揮自己想象。最后提交作品中,有學生做出了重力感應游戲,射擊游戲和簡易多媒體播放器等優秀成果。開放實驗作為課程考核的依據之一,充分調動了學生的學習積極性,主動和同學、老師交流方案,最終獨立完成設計,培養了學生動手實踐能力與創新精神,達到教學目的。
對于學習興趣濃厚,且有一定成果的學生,吸引到科研課題和開發項目中來,分配相關任務,讓學生進一步提升鞏固單片機知識,在真實的項目中,學生會更深入去考慮單片機原理,不斷思考創新,優化已有成果。也可從具體項目中,提煉出一些畢業設計課題,供本科生選題,有利于增強學生的實踐能力與自主研究意識,培養創新能力,為社會輸送創新型人才。
筆者經過在學院內一學期的試點教學,發現學生對單片機新技術學習興趣濃厚,多名學生主動在實驗結束后,借用開發平臺在課后自主實驗。課程改革在課外科技競賽方面也取得了很好的成果,2014年的浙江省電子設計競賽我院學生獲A類題一等獎兩項,二等獎兩項(其中一等獎浙江省共4個名額),其中一項一等獎還獲得了TI杯專項獎。通過單片機新技術配合全新研發的實驗平臺,豐富的例程與生動的實驗,以學生為中心的教育方式,能極大提升學生學習興趣,提高動手能力,也培養了學生創新精神,保證了教學質量,并達到了良好的教學效果。
[1]尤曉萍,林育茲.基于創新實踐的單片機教學方法探索[J].教育教學論壇,2015(1):238-239.
[2]喬莉,劉寅生.基于 CDIO的單片機課程教學改革方法探索[J].黑龍江科技信息,2012(33):196-196.
[3]渠麗巖.讓學生在快樂中學習:談案例教學法在“單片機原理與應用”教學中的應用[J].計算機教育,2009(18):93-95.
[4]劉輝,王新輝,張文希.從電子設計競賽看單片機實驗教學的改革與創新[J].長沙大學學報,2006,20(5):98-100.