黃交宏
摘 要: 針對傳統的高職C語言和單片機課程分開教學帶來的內容枯燥、知識融合度差、教學效率低的不足,探討了以智能車為載體,運用“教、學、做”一體化方法有效融合兩門課程的教學改革方案。實踐表明:融合后的教學方案,激發了高職學生的C語言學習熱情,教學效率高,加深了學生對單片機應用的理解,達到了良好的教學效果。
關鍵詞: 高職教育 C語言 單片機 融合教學 智能車
引言
隨著電子技術的飛速發展,采用C語言開發的單片機控制類產品占據了大量市場。單片機產品的設計、生產、調試和維修崗位需要大量高職人才。因此,C語言課程和單片機應用課程成為應用電子、電氣自動化、計算機控制技術等工科專業的主干課程。這些課程的實踐性要求較高,對高職學生有一定難度。因此,開展高職院校C語言和單片機課程的教學改革成為高職教學研究的熱點。根據高職學生的特點和崗位需求開展教學工作,對學生更快地適應工作崗位有重要的現實意義。筆者結合多年C語言和單片機的教學經驗,對高職的C語言和單片機的融合教學進行探討。
1.傳統教學的不足
1.1知識遺忘率高。
國內高職院校電子電氣類專業的單片機教學大多選用匯編語言或者C語言開發單片機應用系統。以51單片機為主流的匯編語言,指令數量多,不方便記憶。因此,越來越多的高職院校轉向C語言開發工具的單片機教學。根據傳統的高職教學方案,C語言課程和單片機課程開設在不同學期,C語言是單片機的先修課程。為了構建相對完整的知識體系,學生在學習完C語言之后才開始學習單片機,時間相隔長達半年之久。這種做法導致知識遺忘率較高,迫使一些教師把復習C語言作為單片機課程的教學內容之一,以此強化教學效果。由于總學時有限,單片機本體的教學內容相對減少,導致學生對單片機學得不深、學得不透。
1.2內容枯燥,實踐少。
在C語言的機房教學過程中,主要的輸入輸出設備是鍵盤和屏幕,以簡單計算為主的教學內容相對枯燥,表現形式單一。學生很容易把C語言單純理解為計算機專業課,與所學的電子電氣專業無關。這種對C語言主要功能的認識誤區,會降低學習興趣,削弱單片機開發的語言基礎。C教學實踐表明:電類專業的高職學生很難深入理解指針和數組的應用,對C語言的嵌入式開發功能理解不透,導致先修課程基礎不牢固。進入單片機學習階段以后,薄弱的C語言基礎將會妨礙單片機的教學效果。同時,單片機特有的寄存器C定義和特殊位指令還需要補充學習。
傳統的單片機教學以理論教學為主,按照“硬件封裝—寄存器功能—軟件流程—外圍接口”的順序,強調和追求完整的單片機理論體系結構。由于缺乏合適的實踐載體,因此大量專業術語的枯燥講解使學生上課時昏昏沉沉,似懂非懂。過多的理論灌輸使很多學生放棄了單片機課程的學習。這種“重理論、輕實踐”的教學模式培養出的學生,很難快速適應今后的單片機工作崗位。
1.3理實脫節,創新少。
傳統的單片機課程大多數采用實驗箱進行實踐教學[1],完成驗證性的實驗。這種實踐模式跟單片機的實際產品有很大差異,教學效果不理想。不少“95后”的學生功利心強,為了早點完成實驗,過度追求實驗結果,忽略了單片機硬件電路裝調、軟件調試測試方面的能力提高。當全部課程結束的時候,很多同學對單片機產品開發、裝調的全過程不了解,對單片機仿真器的仿真方法(尤其是硬件仿真)掌握不到位。這種教學過程理實脫節的現象,抑制了學生創新能力的發揮。
2.融合教學的設計
針對上述問題,我們探索把C語言和單片機的知識有效融合,推進教學改革,開展項目教學,采用“教、學、做”一體化的融合教學,強化教學效果,更好地體現高職高專的教學特色和教學理念。
教學改革方案的總體思路是:以具有吸引力的項目載體為主線,把C語言和單片機課程融合,開設“C語言與單片機”課程。在高職教學過程中,采用“教、學、做”一體化授課,提高學生動手實踐能力。以夠用為原則,適當精簡C語言的教學內容,降低教學深度。適度增加單片機應用的自主創新環節,鼓勵學生思考,提高應用創新能力。
2.1項目載體。
合適的項目載體有利于實現高職項目化教學[2],促進學生技能的培養。選擇“貼近生活”、“通俗易懂”的項目載體,是提高學生學習興趣的有效手段。在本教學方案設計中,我們選用的項目載體是:單片機智能車。智能車屬于機電一體化的作品,體積小,重量輕,實施難度適合高職高專的教學水平。項目載體的主要功能是采用AT89S52單片機控制車輪伺服電機,實現智能車的運動控制。在光電傳感器的配合下,單片機控制小車進行循跡運動。在超聲傳感器的支持下,單片機控制小車實現“避障”功能。
2.2具體方案。
“C語言與單片機”融合課程總計60學時,其中實踐30學時,理實比為1:1。教學全過程以單片機智能車為核心,以學生為主體,教師起引導作用。學生通過智能車的制作與調試提高動手實踐能力,通過思考和提問激發創新思維。整體教學方案可以分成六個模塊,簡述如下:
(1)課程導入和智能車綜述
在這個教學模塊中,教師首先講授單片機的典型應用、歷史沿革、主流分支和前沿技術,使學生了解課程的教學目標和對應工作崗位,淺顯了解單片機產品。其次,教師演示裝調好的智能車實物,學生能正確理解智能車的主要功能,提高學習興趣。實踐環節安排的內容是單片機智能車的結構件安裝。在教師的指導下,學生根據產品套件說明書的要求,使用螺絲刀完成車架、車輪、電機、電沲盒等結構件的安裝和調試。在裝調完畢以后,教師補充講解智能車應用場合和綜述,學生對項目載體有了更加清晰的認識。
(2)控制板的硬件設計與裝調
首先,學生完成智能車單片機控制電路板的安裝、焊接和硬件調試。其次,教師講解單片機最小系統(包含:單片機、時鐘電路、復位電路)的電路結構和工作原理。學生在明確單片機IO接口使用方法之后,簡單了解車輪伺服電機的驅動電路工作原理。通過“講練結合”的教學方法,學生得到了單片機產品的硬件設計、安裝、調試的全過程體驗,掌握了電路組成和原理,提高了單片機硬件裝調的實踐能力。
(3)簡單運動的開發調試
本教學模塊主要完成智能小車C51的IO接口控制,實現伺服車輪的前進功能。教師在簡要介紹51單片機系統的軟硬件開發環境之后,把教學重點轉入C語言。通過LED亮燈的樣例程序,完成C語言的概述導入。在本模塊教學中,主要涉及的C51知識點有:數據類型、運算符與表達式;C51特殊功能寄存器的C定義;51的位類型與位運算;順序結構程序設計。在操作方面,學生須掌握KEILμVision軟件開發平臺的使用方法,包括代碼編輯、編譯、下載和仿真調試。
(4)復雜運動的開發調試
本教學模塊的主要功能是:通過C51控制小車的伺服車輪,完成后退、轉圈、加減速、轉向等復雜運動功能。在這一階段,學生可以通過項目載體的調試,結合51單片機的特點,完成C語言中選擇結構程序、循環結構程序的學習。在此基礎上,教師引導學生嘗試進行程序優化,教會學生數組的使用、函數的調用技巧。
(5)人機接口模塊的開發調試
在智能小車的單片機控制板上,增加數碼顯示和觸須接口,可以完成小車運動計時和觸碰避障功能。在教學過程中,通過“先做后講”的方式提高學習興趣能夠取得更加理想的教學效果。學生通過實踐環節觀察單片機人機接口的電路結構,通過C51編程與調試直接體驗“軟件去抖動”、“LED字形碼編程”等應用技巧。
(6)避障模塊的開發調試
避障模塊裝調是智能小車項目載體的綜合教學環節。在C語言應用部分,側重指針、結構體編程和開發。在單片機方面,須掌握“中斷”的概念及其應用方法、串行接口的調試與編程。避障模塊采用了紅外反射傳感器,融合了傳感器應用[3]、模擬信號調理等方面知識。因此,開發調試智能小車的避障模塊,能加深學生對單片機產品總體框架的理解,培養他們的單片機綜合應用能力和開發能力。教學實踐表明:部分優秀學生在這一階段能優化和創新避障算法程序,提升小車的智能化水平,學生的產品創新意識得到進一步強化。
以上六個模塊的教學方案以智能小車裝調為核心,包含了傳統C語言課程和單片機課程的主要知識點。智能小車體積小,重量輕,易于攜帶,便于各種教學方法的靈活運用[4]。比如:我們把課堂教學與課外教學緊密結合,組織“城院巧匠杯智能小車”競賽,激發學生學習熱情,豐富課余生活,提高學生的單片機綜合應用能力和創新能力。“C語言與單片機”融合課程采用模塊計分的評價考核方式,前五個模塊各占總分的15%,第六模塊占25%。在考核方案中,重視學生的過程體驗,把團隊協作、職業素養作為評價的重要組成部分,提高學生綜合職業素質。
結語
高職傳統的C語言課程和單片機課程分開教學,知識遺忘率高,教學效率低,融合度差,理實不能有效結合,不利于創新型人才的培養。針對上述不足,本文探討了以單片機智能車為項目載體的C語言與單片機融合教學設計,給出了六模塊教學的具體方案。教學實踐表明:采用“教、學、做”一體化融合兩門課程的教學改革方案,方便運用各種教學方法,學以致用,有效激發高職學生的學習熱情,有助于創新能力和職業素質的培養,達到良好的教學效果。
參考文獻:
[1]馮惠秋,呂寧.《單片機基礎及應用》課程實踐模式探索[J].職業教育研究,2013(6):123-124.
[2]焦玉全,朱燕祥.單片機原理及應用課程項目化教學探索[J].讀與寫(教育教學刊),2013(7):29-30.
[3]李瀟雯.智能小車設計中傳感器的應用[J].太原大學教育學院學報,2015(2):96-99.
[4]余永華.單片機課程理實一體化教學模式改革[J].讀與寫(上,下旬),2015(3):314.