喻劍
(同濟大學電子與信息工程學院實驗中心,上海 201804)
2018年10月教育部、業和信息化部、中國工程院聯合發布了《關于加快建設發展新工科實施卓越工程師教育培養計劃2.0的意見》[1],意見要求高等學校面向工業界、面向世界、面向未來,加快培養適應和引領新一輪科技革命和產業變革的卓越工程科技人才。要求培養學生對產品和系統的創新設計、建造、運行和服務能力。嵌入式系統是信息、控制學科大學生培養的一門重要課程,也是教學改革的重要實踐課程之一。從《意見》所提出的要求來看,現有的嵌入式系統實驗教學還存在著一些問題。
雖然教育部號召國內高校加強對實驗室的管理,但實驗室建設規劃、資源配置、實驗教學改革等工作相對滯后,使得實驗教學仍處于理論教學的附屬地位。同時由于學分的限制,長期以來實驗教學被設為課內實驗而不是單獨的一門課程。從理論課中分出一些課時進行實驗,造成實驗課時很少,內容又多是驗證性的實驗,學生實驗的時間很緊,沒有太多的時間進行思考。而對于嵌入式課程來說,重視課外實踐活動及動手能力的培養尤為重要[2]。
實驗考核方法單一也影響實驗教學效果。實驗教學學分低且沒有獨立的考核體系,一般只能通過平時操作和實驗報告來評定學生的成績。這種考核無法客觀全面地評價學生對嵌入式系統的學習情況,驗證性的實驗也無法發揮學生的創新性。以上的因素在客觀上造成學生對實驗不重視,也影響了學生的實驗積極性、主動性。
傳統的實驗教學方式中,驗證性的實驗占了大部分內容。教師事先設計好實驗的內容,調試好硬件與代碼,在上課的時候先講解實驗的原理、代碼結構、實驗操作步驟,甚至進行相關演示,然后學生逐步還原老師的實驗步驟[3-4]。一般來說對于這種驗證性的實驗,學生實驗過程一般比較順利,很容易完成,因此也造成部分學生不重視動手參與。
嵌入式系統實驗教學一般使用實驗箱或專用開發板。一方面實驗箱價格比較貴,因此更新周期長[5-6],有的甚至一套實驗箱使用10多年。而嵌入式系統的軟硬件更新非常迅速,新的芯片、新的系統不斷地涌現,客觀上造成實驗教學的內容陳舊且與工程應用相脫節。學生學完嵌入式系統后,參加實際工作還需要較長時間的學習。另一方面,專用的實驗箱在完成實驗教學以后就只能放在架子上,設備利用率低。而大學生創新項目、各種比賽等需要嵌入式系統的場合,卻需要重新購買類似的設備,造成資源浪費。
嵌入式系統是一門與實踐聯系非常緊密的課程,許多內容只有通過實踐才能有深刻的認識,學生認真做好一個實驗所能學到的東西甚至多于理論的教學。為此,將嵌入式系統課內實驗獨立出來,成立一門獨立的實驗課。一方面將課時數從課內12學時調整為單獨17學時,另一方面實驗內容上不再束縛于理論課的內容,不再只是對理論內容的簡單驗證。
在評價方式方面,我們實行了更加靈活、全面的實驗評價體系。由于在部分實驗內容里增加了設計的要求,因此需要學生在課前進行預習和實驗代碼準備,如果沒有進行預先準備那么實驗就很難在規定的時間內完成。新的考核方式不只是考核學生的出勤、課堂上聽課的表現,還融入了課前準備、實驗動手能力、實驗報告等內容,因此評價更全面。
按照培養卓越工程科技人才的要求,著力培養學生的工程設計能力,同時加強創新能力。為此,以17個學時(Arm Cortex M3)嵌入式系統實驗教學為例,將整個教學實驗課程分為驗證實驗、模塊設計實驗和綜合應用實驗三個層次。從易到難形成逐層遞進的教學實驗體系。如圖1所示。

圖1 嵌入式系統實驗教學內容
驗證實驗主要是讓學生熟悉開發環境,學習軟硬件使用方法,了解基本的編程與調試過程。學生要求掌處理器芯片的基本特點、最小電路結構、了解硬件環境的連接。掌握開發軟件環境的配置、工程的創建、項目文檔管理、程序的調試方法(斷點、存儲器察看、變量的跟蹤、程序全速運行、跟蹤運行、單步運行、片內外設的觀察與修改等)。
模塊設計實驗培養學生將一兩個外部設備結合起來,實現一個稍復雜功能的能力。這些實驗一方面要求學生掌握單個外部設備的使用方法。比如利用定時器輸出PWM實現功率控制、通過ADC獲取外部設備狀態、使用SPI實現用無線射頻模塊通信、通過Uart連接上位機,利用Labview實現上位機對設備狀態的控制等。另一方面還要求學生能將多個外設模塊結合起來完成一個完整的功能。比如通過ADC獲取可調電阻的阻值,根據電阻值相應的調整WM模塊輸出占空比達到調光的效果;或者使用外部中斷獲取用戶按鍵信息,根據按鍵的不同特征通過無線模塊發射不同的數值,模擬發報機等功能。在這些實驗中,學生需要思考將多個功能結合起來的辦法,涉及參數傳遞,數值計算等內容。
綜合設計型實驗要求學生能使用實時操作系統完成一個復雜的工程設計,所考驗的除了各模塊的使用以外,還需要考慮各功能模塊之間搭接的時序關系,各線程之間的消息傳遞、數據交換、線程間的同步等。通過綜合設計實驗,學生對于嵌入式系統將會有更深刻的認識。
針對實驗使用的開發箱利用率低等問題,設計并開發了模塊化的教具。在硬件平臺上不再采用一塊開發板的形式,對板上的各功能模塊采取“模塊化分立,按需連接”的原則,一個模塊就是一個具有標準接口的小板子,在使用的時候根據需要選擇不同的模塊,連接成一個完整的應用硬件。為了充分考慮擴展與連接的便捷性,各模塊使用通用板間連接端子進行連接,學生可按需進行拼裝并且功能管腳可選。為保證各模塊與主控芯片間在長時間使用后還可以保證可靠連接,各模塊與主控板連接使用標準排線代替杜邦線,在外圍模塊上,根據模塊的連線特點,將接口定義為電源與信號兩類,電源統一使用同一個標準接口,信號接口也標準化為2P、4P、6P等幾個有限規格。為方便模塊的固定,防止一堆模塊雜亂擺放引起故障,所有模塊使用磁柱夾住固定在底板上。這樣既保證了擴展的靈活性,也保證了實驗的便捷性。硬件的可擴展性設計使得教具不但能支持嵌入式實驗教學,同時也能支持創新項目等應用,只要配置不同的模塊就可以實現對不用應用的支持。搭建開放實驗平臺,使模塊化的教具既可以用于教學也可以用于其它項目,提高了設備的利用率。同時由于模塊的價格便宜,易于更新。更換一個新的處理器系列,只需要更新處理器模塊就可以完成,因此可以很容易與業界的發展保持同步。
從 2019年起在本校的電科專業進行了試點性實驗教改,從教改的效果上來看比較明顯。首先優化和整合了實驗教學內容,形成了從驗證實驗到綜合性設計逐步深入的多層次實驗教學體系。在各個不同的層次,關注的重點有所不同。教學實驗內容的調整,進一步明確了學生培養目標,也極大的提高了學生的學習積極性。從學生的出勤率和實驗的參與程度來看,經過教學改革,學生對嵌入式實驗課程的重視程度有了很顯著的提升,對嵌入式系統的實驗也產生了較濃厚的興趣,設計能力、動手能、創新能力都得到了提高。另一方面,所開發的模塊化教具,在嵌入式系統、模塊化電子設計等課程中可以打通使用,同時也支持了大學生創新項目,極大的提高了設備的利用率。
對大學生綜合運用知識和創新創造能力的培養,是建設創新型國家的迫切需要。通過教學改革,理清了實驗教學的發展思路;增加實驗教學的比重,促進了學生對嵌入式系統的學習。合理調整教學內容,形成多層遞進的實驗體系,培養學生的綜合創新能力。教學實踐證明,提高了嵌入式實驗教學的教學質量。另外通過自研模塊化教學用具,提高了教具的利用率,同時使教具更新更容易,以跟上技術的快速發展,更符合新的學生培養要求。