牛繼高, 徐春華, 丁舟波, 朱從云
(中原工學(xué)院 機電學(xué)院, 河南 鄭州 450007)
嵌入式系統(tǒng)是將計算機硬件和軟件結(jié)合起來構(gòu)成的一個專門裝置,可以完成特定的功能和任務(wù),能夠在沒有人工干預(yù)的情況下獨立地對被控對象進行實時的監(jiān)測和控制[1]。在車輛工程研究生培養(yǎng)中,“嵌入式系統(tǒng)設(shè)計”是一門重要課程,涉及到的前期課程包括“C語言”、“單片機”、“操作系統(tǒng)原理”等。由于進修此門課程的研究生基礎(chǔ)知識的參差不齊以及學(xué)時數(shù)的限制,傳統(tǒng)的單向講授的知識傳輸方式,難以使學(xué)生直接體驗到所學(xué)的知識內(nèi)涵,極易造成學(xué)生思維和學(xué)習(xí)的被動,削弱他們學(xué)習(xí)的興趣和動力[2]。如何將各方面的知識進行有機組合,既不脫離課程的教學(xué)目的和教學(xué)內(nèi)容,又能做到抓住重點有的放矢,使研究生盡快掌握嵌入式系統(tǒng)的設(shè)計方法,是任課教師亟待解決的一個重要課題。
案例式教學(xué)提供了融入實際工程背景的案例,其本質(zhì)是理論與實踐相結(jié)合的互動式教學(xué),目的在于培養(yǎng)學(xué)生運用相關(guān)課程知識解決實際問題的能力[3]。目前我國高校的許多課程都采用了案例式教學(xué)模式,并取得了良好效果。
本文基于我校研究生教育質(zhì)量提升工程項目的教學(xué)實踐,探討“嵌入式系統(tǒng)設(shè)計”研究生課程案例式教學(xué)的模式和方法。
傳統(tǒng)教學(xué)時,教師通常以多媒體的形式在臺上講解,學(xué)生在臺下被動接受,整個教學(xué)過程刻板枯燥,學(xué)生的主觀能動性和學(xué)習(xí)熱情受到抑制[4];
在我院“嵌入式系統(tǒng)設(shè)計”課程教學(xué)上,選修此課的研究生中有一部分之前未學(xué)過“C語言”或“單片機”等課程,缺乏微控制器硬件和軟件的知識,只是由于畢業(yè)課題或?qū)燀椖康男枰x修了這門課程。由于學(xué)時數(shù)的限制,在課堂上大幅穿插補充這部分基礎(chǔ)理論知識也顯得不現(xiàn)實。
除此以外,該課程傳統(tǒng)的實踐教學(xué)環(huán)節(jié)學(xué)時數(shù)少,且實驗內(nèi)容和功能簡單,與工程應(yīng)用場景不相匹配。當遇到實際工程項目時,學(xué)生常因不知從何處下手而表現(xiàn)得束手無策。總之,傳統(tǒng)的教學(xué)模式不利于學(xué)生主觀能動性的調(diào)動以及創(chuàng)新能力的培養(yǎng),無法達到綜合運用所學(xué)知識解決工程中實際問題的教學(xué)目標。
研究生課程教學(xué)具有很強的針對性,學(xué)生在關(guān)注理論知識的同時,更期望實際工程應(yīng)用能力的獲得。因此,我院“嵌入式系統(tǒng)設(shè)計”課程案例式教學(xué)的目標是通過該門課程的教學(xué),使研究生能具備簡單電控項目應(yīng)用軟件開發(fā)的能力。
目前汽車電子控制領(lǐng)域廣泛采用飛思卡爾(Freescale)微控制器芯片作為電控單元的CPU,其產(chǎn)品范圍包含了8位、16位和32位單片機。因此我院“嵌入式系統(tǒng)設(shè)計”課程選用基于Freescale HCS12微控制器芯片系列的教材進行教學(xué),內(nèi)容包括微控制器結(jié)構(gòu)、最小系統(tǒng)、指令系統(tǒng)、輸入/輸出接口、串行通信接口SCI/SPI、A/D和D/A轉(zhuǎn)換、定時器接口、CAN總線以及uC/OS-II實時操作系統(tǒng)等。由于原教材內(nèi)容多側(cè)重于基礎(chǔ)理論和各模塊寄存器的介紹,顯得內(nèi)容枯燥、知識點繁多且不容易理解,教材中選取的范例不僅數(shù)量少且缺乏典型性、新穎性和系統(tǒng)性。
為了開展案例式教學(xué),原教材內(nèi)容需要優(yōu)化,即理論知識做到“必須、夠用”即可,對那些通過課堂案例剖析就可以獲得的理論知識應(yīng)進行刪減,如陳述性的知識以及對各模塊寄存器的介紹等[5];對原教材中略講或末講的而工程應(yīng)用中又非常重要的知識要予以增加,如PID閉環(huán)控制、LIN通信和uC/OS-II實時操作系統(tǒng)的移植方法及應(yīng)用等。我們特別加強了對這類案例的選取和教學(xué)上的設(shè)置。
本教研室教師歷時四年與某汽車電子電器生產(chǎn)企業(yè)合作,參與了車身智能控制系統(tǒng)BCM、電動汽車整車控制系統(tǒng)VCU、汽車無鑰匙進入和一鍵啟動控制系統(tǒng)PEPS等大型項目的研發(fā),積累了豐富的嵌入式控制系統(tǒng)設(shè)計經(jīng)驗,同時制作了一批“ECU+負載箱”形式的案例式教學(xué)平臺。通過與企業(yè)的項目合作,明確了企業(yè)對人才的需求以及學(xué)生應(yīng)該具備的知識和能力,在此基礎(chǔ)上對照“嵌入式系統(tǒng)設(shè)計”的教學(xué)大綱,將課程的知識點進行模塊化分解,然后根據(jù)知識點選擇具有工程背景的典型案例,要求知識點與典型案例之間存在一一對應(yīng)的關(guān)系,同時選取的案例要能夠有效涵蓋教學(xué)大綱的內(nèi)容。
在嵌入式系統(tǒng)的工程應(yīng)用中,各知識點之間不是孤立的關(guān)系,而是相互配合協(xié)調(diào)統(tǒng)一的有機整體。因此案例的選取應(yīng)遵循先易后難、循序漸進的原則,后續(xù)案例應(yīng)盡可能地涵蓋之前案例中的知識點,目的在于培養(yǎng)學(xué)生處理復(fù)雜邏輯關(guān)系的能力?;诠こ瘫尘暗陌咐x取如表1所示,其中,PID閉環(huán)控制和LIN通信屬于新增案例。
表1 嵌入式系統(tǒng)設(shè)計教學(xué)案例設(shè)置
表1中設(shè)置了11個教學(xué)案例,從較簡單的CPU設(shè)置、輸入輸出控制逐漸過渡到中等難度的脈沖捕捉、CAN通信技術(shù),再到最難的LIN、uC/OS-II移植方法及應(yīng)用,案例所包含的知識點能夠覆蓋嵌入式系統(tǒng)課程的基本教學(xué)內(nèi)容,案例的順序符合由淺入深的學(xué)習(xí)規(guī)律。從表1可以看出,教學(xué)案例的設(shè)置具有典型的工程應(yīng)用背景,一方面有利于激發(fā)學(xué)生的學(xué)習(xí)興趣,變被動學(xué)習(xí)為主動學(xué)習(xí),另一方面也突出體現(xiàn)了案例的實際應(yīng)用價值,有利于學(xué)生所學(xué)知識與企業(yè)需求接軌。
研究生課程教學(xué)具有小班上課,學(xué)生人數(shù)少,教學(xué)資源相對豐富的特點,如每位研究生均可配置一套實驗平臺,因此非常適合采用多元化的教學(xué)方法?;贔reescale微控制器和CodeWarrior編譯環(huán)境的應(yīng)用程序開發(fā),軟件工程師已普遍采用可自動生成代碼的Processor Expert(簡稱PE,下同)模式,與手寫代碼相比,PE模式下生成的代碼具有開發(fā)周期短、運行效率高、安全可靠等優(yōu)點。鑒于目前介紹PE使用方法的資料很少,本教研組教師對Freescale微控制器各內(nèi)設(shè)模塊的PE設(shè)置和使用方法,進行歸納總結(jié),并作為所選課程的輔助教材。
在“嵌入式系統(tǒng)設(shè)計”案例式教學(xué)過程中,案例的實現(xiàn)是教學(xué)的關(guān)鍵,為了獲得最佳的教學(xué)效果,課堂教學(xué)采用現(xiàn)場編程的方式,主要包含以下四個環(huán)節(jié)。
(1)現(xiàn)場編程。首先概括性闡述案例功能及其工程應(yīng)用的背景,使學(xué)生對將要學(xué)習(xí)的案例有個宏觀的認識,然后基于“ECU+負載箱”實物平臺和多媒體設(shè)備,任課教師逐項完成工程建立、各PE模塊設(shè)置、編寫主程序代碼、程序編譯、調(diào)試及運行等操作,直至程序成功運行。
(2)講解案例背景程序。案例背景程序是指已在工程中得到應(yīng)用的產(chǎn)品級代碼,例如表1中的CAN通信,對應(yīng)的產(chǎn)品級代碼即為采用分布式控制的PEPS應(yīng)用程序。產(chǎn)品級代碼的引入有利于學(xué)生獲取對所學(xué)知識的信任感,同時也拉近了理論知識與實際應(yīng)用之間的距離。
(3)提問與討論。針對現(xiàn)場編程過程中采用的方法和技巧,通過提問的方式拓寬學(xué)生的認知思路,并就重點和難點問題展開討論。例如,GPIO案例中關(guān)于按鍵防抖問題的提出、AD采樣案例中采樣結(jié)果的濾波問題等。
(4)學(xué)生動手實踐。一方面,課堂上要求學(xué)生跟隨教師的現(xiàn)場編程步驟,在各自的實驗平臺上動手實踐;另一方面,由于嵌入式系統(tǒng)應(yīng)用軟件的編程方法比較靈活,即采用不同的軟件算法可以實現(xiàn)同樣的功能,區(qū)別在于優(yōu)秀算法的運行效率高、可靠性好,因此在課堂上鼓勵學(xué)生對編程方法提出不同的改進意見,并現(xiàn)場予以驗證。
通過多元化的教學(xué)方法學(xué)生對需要掌握的知識產(chǎn)生直觀的認識,學(xué)生的學(xué)習(xí)興趣、積極性、主動性和實踐能力也得到了進一步的提高,同時也為研究生課下主動學(xué)習(xí)補足短板注入了動力。
“嵌入式系統(tǒng)設(shè)計”研究生課程原先的成績評定采用“平時成績30分+期末小論文70分”的方式,考核方式單一。在案例式教學(xué)過程中,學(xué)生通過案例接觸到新知識,然后通過課下的鉆研和實踐,使獲得的知識得到鞏固和擴展。因而,該門課程的成績評價改用“課堂30分+課下30分+期末綜合設(shè)計40分”的考核新模式。其中,“課堂30分”根據(jù)學(xué)生在課堂上對各個案例的掌握情況來打分,主要包括課堂教學(xué)過程中“提問與討論”和“學(xué)生動手實踐”環(huán)節(jié)的得分。學(xué)生課下的實踐過程是案例式教學(xué)的重要一環(huán),是集資料檢索、相關(guān)知識學(xué)習(xí)、硬件電路搭建、軟件算法編寫、程序調(diào)試與糾錯等工作于一體,全面提升動手能力、工程應(yīng)用能力和創(chuàng)新能力的一個過程。學(xué)生課下的實踐過程以項目的形式展開,具體操作方法如下:圍繞每個案例涵蓋的知識點提出若干項目,每個項目均有不同功能要求,學(xué)生依據(jù)項目功能開展課下工作,任課教師根據(jù)項目的完成情況(如代碼合理性、執(zhí)行效率和創(chuàng)新性等)進行打分。
期末成績則采用綜合設(shè)計的方式進行評定,要求學(xué)生基于uC/OS-II架構(gòu)完成一個多任務(wù)并行應(yīng)用程序,程序所要完成的功能由學(xué)生自定,但應(yīng)盡可能地包含之前所學(xué)案例中的知識點。綜合設(shè)計開始前學(xué)生首先寫出設(shè)計任務(wù)書,闡述任務(wù)所能實現(xiàn)的功能、涵蓋的知識點、實施方案以及所需的實驗設(shè)備等。綜合設(shè)計結(jié)束后學(xué)生寫出總結(jié)報告,然后由教研組教師組成專家組對學(xué)生進行現(xiàn)場考核,并根據(jù)評分標準給出期末綜合設(shè)計的成績。
我院針對研究生課程“嵌入式系統(tǒng)設(shè)計”教學(xué)時數(shù)少、涉及的基礎(chǔ)知識多、教學(xué)內(nèi)容實踐性強和工程應(yīng)用能力要求高的特點,對該門課程的案例式教學(xué)方法進行了探索,實踐結(jié)果可以得到以下結(jié)論:
(1)案例式教學(xué)實現(xiàn)了理論知識向案例的轉(zhuǎn)化,使學(xué)生對知識的獲取由被動轉(zhuǎn)為主動,激發(fā)學(xué)生學(xué)習(xí)興趣的同時,也極大地提高了學(xué)生的學(xué)習(xí)效果。
(2)基于工程背景的案例選取和產(chǎn)品級代碼的學(xué)習(xí),增強了學(xué)生對案例知識的認同感,拓寬了學(xué)生的學(xué)習(xí)思路。
(3)課堂和課下并重的考核方式,有利于培養(yǎng)學(xué)生獨立鉆研和獨立學(xué)習(xí)的能力,為研究生后續(xù)的項目開展奠定堅實的基礎(chǔ)。
[1] 王宜懷, 劉曉升, 等. 嵌入式系統(tǒng)--使用HCS12微控制器的設(shè)計與應(yīng)用[M]. 北京: 北京航空航天大學(xué)出版社, 2010.
[2] 張磊, 王少清, 周鵬, 等. 案例式教學(xué)法在內(nèi)科學(xué)教學(xué)中的的應(yīng)用[J]. 成都院學(xué)院學(xué)報, 2010, 5(1): 91-92.
[3] 謝曉霞, 羅鵬飛, 張權(quán). “隨機信號分析與處理”課程案例式教學(xué)的實踐[J]. 南京:電氣電子教學(xué)學(xué)報,2011, 33(6): 95-97.
[4] 周一恒, 王軍, 毛會瓊, 牛小玲. “嵌入式系統(tǒng)”課程項目引領(lǐng)式教學(xué)[J]. 南京:電氣電子教學(xué)學(xué)報, 2016,38(6): 38-41.
[5] 李鴻. 高職“電子測量技術(shù)”課程教學(xué)改革的實踐[J]. 南京:電氣電子教學(xué)學(xué)報,2016,38(6): 59-62.