錢丹浩
(南京化工職業(yè)技術(shù)學(xué)院,南京210048)
嵌入式系統(tǒng)的廣泛應(yīng)用及其良好的發(fā)展?jié)摿Υ呱似髽I(yè)和社會對嵌入式系統(tǒng)人才的需求,越來越多的在校大學(xué)生、企業(yè)工程師和相關(guān)技術(shù)人員也都加入了嵌入式系統(tǒng)的學(xué)習(xí)大軍,許多教育科研單位和相關(guān)培訓(xùn)機(jī)構(gòu)都在開展或計劃開展嵌入式系統(tǒng)的教學(xué)與培訓(xùn)工作。但是如何開展嵌入式系統(tǒng)的“教”與“學(xué)”,以及通過什么樣的開發(fā)平臺進(jìn)行知識的學(xué)習(xí)和應(yīng)用,作者經(jīng)過調(diào)研、分析,總結(jié)出當(dāng)前普遍存在的問題:
第一,高校、高職院和企業(yè)培訓(xùn)機(jī)構(gòu)一般都采用理論與實踐相結(jié)合的教學(xué)方法進(jìn)行授課,并且實踐課時數(shù)一般要低于理論課時數(shù),并沒有從學(xué)校層次、學(xué)生的學(xué)習(xí)能力、以及實踐開發(fā)平臺的復(fù)雜性等方面加以區(qū)分。教學(xué)沒有層次性和針對性,效果不為理想。
第二,嵌入式系統(tǒng)不是一門獨立的學(xué)科,它既與計算機(jī)專業(yè)課程有關(guān),也與電子、通信、自動化等諸多學(xué)科的課程有關(guān),在具體應(yīng)用時還牽涉到相關(guān)的應(yīng)用背景。然而在具體教學(xué)時,并沒有從專業(yè)的角度來進(jìn)行課程分析與設(shè)計,以滿足計算機(jī)、電子、通信和自動化等不同專業(yè)背景的學(xué)生對嵌入式學(xué)習(xí)的需求。
第三,嵌入式系統(tǒng)是一門應(yīng)用性很強(qiáng)的技術(shù)類課程,學(xué)生動手能力的培養(yǎng)是嵌入式系統(tǒng)教學(xué)過程中的一個非常重要的環(huán)節(jié),而當(dāng)前的教學(xué)實驗平臺基本上都是基礎(chǔ)性的驗證實驗學(xué)習(xí),沒有與實際工程應(yīng)用結(jié)合起來。學(xué)生在做完實驗之后,動手能力依然欠缺,還是不具備獨立開發(fā)的能力。
可見,采用新的教學(xué)模式和開發(fā)平臺對嵌入式系統(tǒng)教學(xué)的諸多問題實施改革勢在必行。對嵌入式系統(tǒng)進(jìn)行教學(xué)改革必須根據(jù)其課程特性,建立一種學(xué)習(xí)與工作相結(jié)合的教學(xué)模式和課程設(shè)計理念。為此,作者采用當(dāng)前高職教育的“項目化的”、“基于工作過程系統(tǒng)化的”教學(xué)模式,對嵌入式系統(tǒng)的課程進(jìn)行重新設(shè)計。具體而言,是以“專業(yè)項目模塊”為載體,采用任務(wù)驅(qū)動的方法,通過老師和學(xué)生的共同參與來進(jìn)行教學(xué)活動。在此基礎(chǔ)上,通過對專業(yè)項目模塊的學(xué)習(xí)和使用,最終實現(xiàn)對嵌入式系統(tǒng)這門技術(shù)的掌握。
“項目化教學(xué)”其實是一種新的教學(xué)模式,是“行動導(dǎo)向”教學(xué)法的一種,是以“項目”為中心,老師和學(xué)生一起通過實施一個完整的項目而進(jìn)行的教學(xué)活動,它要求將規(guī)定的教學(xué)內(nèi)容和學(xué)生的專業(yè)能力培養(yǎng)在有限的課時內(nèi)完成,并且在項目結(jié)束后會產(chǎn)生一個較完整的作品。其特點是:項目載體,任務(wù)驅(qū)動,學(xué)生主體,素質(zhì)滲透,工學(xué)結(jié)合;學(xué)生各種能力的訓(xùn)練、素質(zhì)的培養(yǎng)、知識的運用,全部體現(xiàn)在項目完成過程之中。其主要實施流程如圖1所示。
通過這5個流程,實現(xiàn)了傳統(tǒng)教學(xué)中以教師為中心到項目化教學(xué)中以學(xué)生為中心的轉(zhuǎn)變,以課本為中心到以項目為中心的轉(zhuǎn)變,和以課堂為中心到以實際開發(fā)應(yīng)用為中心的轉(zhuǎn)變,讓學(xué)生做
學(xué)習(xí)的主人。這樣不但能讓學(xué)生更好地理解所學(xué)的知識、技能及一般的項目開發(fā)流程,同時能全面培養(yǎng)學(xué)生的創(chuàng)新思維和創(chuàng)新實踐能力。
“項目化教學(xué)”對老師而言最大的挑戰(zhàn)是:如何進(jìn)行“項目”設(shè)計。因為沒有項目,就沒有教學(xué)內(nèi)容,也就不可能進(jìn)行項目化教學(xué)。因此對老師而言,必須實行“教學(xué)項目制”的教育改革,走工學(xué)結(jié)合、校企合作的道路。教師要從企業(yè)應(yīng)用實際出發(fā),分析構(gòu)建項目模型、項目內(nèi)容、項目實施流程,以及完成項目所需的知識、能力、素質(zhì)等。同時教師還要根據(jù)多年教學(xué)經(jīng)驗對這些資源進(jìn)行歸納和整理,設(shè)計出技術(shù)難度由淺入深、技術(shù)含量由少到多、自主學(xué)習(xí)逐步加大、對學(xué)生綜合能力不斷提高的階梯式項目課程。這種產(chǎn)學(xué)結(jié)合的教學(xué)項目不僅能完全再現(xiàn)企業(yè)操作的流程,而且能極大地調(diào)動學(xué)生的學(xué)習(xí)熱情和創(chuàng)新能力,讓學(xué)生真正了解到“學(xué)什么,為什么學(xué),怎么學(xué)”。
對嵌入式教學(xué)而言,實行項目化教學(xué)是必由之路。一方面,嵌入式是一門應(yīng)用性很強(qiáng)的課程,它強(qiáng)調(diào)軟硬件的集成、強(qiáng)調(diào)系統(tǒng)的分工與協(xié)作,對這些比較抽象的理論,采用項目化的方法進(jìn)行教學(xué),學(xué)生很容易接受;另一方面,嵌入式系統(tǒng)內(nèi)容多、范圍廣、層次深,采用傳統(tǒng)的教學(xué)方法學(xué)生很難建立起整個系統(tǒng)的概念。在硬件上僅僅是認(rèn)識了某個嵌入式處理器和它的存儲器結(jié)構(gòu)、接口等,軟件上也只是了解到某個操作系統(tǒng)的相關(guān)特點和移植等,具體實驗時仍然是輸入程序、驗證結(jié)果,最后依然沒有達(dá)到實際工作的能力需求,沒有真正掌握嵌入式系統(tǒng)。
所以,“工欲善其事,必先利其器”。要實施嵌入式系統(tǒng)的項目化教學(xué),必須以項目化的教學(xué)理念為主導(dǎo),解剖嵌入式系統(tǒng),并以此為基礎(chǔ),重新設(shè)計出一套適合于當(dāng)前高等院校嵌入式系統(tǒng)項目化教學(xué)所必需的開發(fā)系統(tǒng)平臺,來滿足老師的嵌入式系統(tǒng)項目化教學(xué),以及學(xué)生的項目化模塊訓(xùn)練等學(xué)習(xí)內(nèi)容。

圖1 項目化教學(xué)實施流程
當(dāng)前一般的嵌入式系統(tǒng)教學(xué)開發(fā)平臺,不管是基于ARM 7、ARM 9還是XScale的,其教學(xué)和實驗的方法都沿用了傳統(tǒng)的單片機(jī)或微機(jī)原理的方式,這對于學(xué)習(xí)嵌入式和掌握嵌入式總體設(shè)計是一個很大的難題。嵌入式ARM不同于單片機(jī),后者系統(tǒng)簡單,絕大部分情況一個人就可以完成整個系統(tǒng)設(shè)計;嵌入式系統(tǒng)強(qiáng)調(diào)模塊分工,強(qiáng)調(diào)項目合作等,這需要學(xué)生不僅僅掌握相關(guān)的技術(shù),還需要對總體項目有一定的了解。
針對這一現(xiàn)狀,作者結(jié)合當(dāng)前高職院校推行的項目化教學(xué)理念,提出了項目化、模塊化的設(shè)計方案,構(gòu)建了嵌入式系統(tǒng)的項目化教學(xué)開發(fā)平臺,解決了目前嵌入式系統(tǒng)教學(xué)中的諸多問題;另一方面,該平臺具備靈活的擴(kuò)展性,可在以后的幾年內(nèi)依然保持領(lǐng)先的地位,不會因為技術(shù)的發(fā)展而過時。
因此,嵌入式的項目化教學(xué)開發(fā)系統(tǒng)平臺的構(gòu)建,設(shè)計時應(yīng)考慮下列原則:
①擴(kuò)展性原則。系統(tǒng)采用ARM 9+Linux的開發(fā)模式進(jìn)行設(shè)計,采用先進(jìn)的技術(shù)架構(gòu)和開發(fā)模式,便于擴(kuò)展開發(fā)。客戶可根據(jù)自身需要,按自己的意愿進(jìn)行修改或增加新的功能模塊。具有開放性的原則可以給客戶一個最適合自己的教學(xué)開發(fā)系統(tǒng)平臺。
②項目化原則。系統(tǒng)的任何一個模塊,都必須以項目化的形式出現(xiàn)。項目模塊的構(gòu)建主要包括項目的選取、設(shè)立、形成和開發(fā)都必須是符合實際的項目開發(fā)流程,提供給老師和學(xué)生一個完整的項目開發(fā)參考和系統(tǒng)級思維框架,忠實于項目化教學(xué)理念。
③專業(yè)性原則。由于開發(fā)平臺是為不同專業(yè)的學(xué)生服務(wù)的,因此每一個專業(yè)模塊都必須建立在該專業(yè)的基礎(chǔ)知識上,且淺顯易懂、常見常用。增加學(xué)生興趣,快速入門。
根據(jù)上述3個指導(dǎo)原則,作者針對各學(xué)科專業(yè)特點,結(jié)合嵌入式在該專業(yè)中的應(yīng)用及項目化教學(xué)理念的思考,設(shè)計出與專業(yè)對應(yīng)的項目模塊,滿足不同專業(yè)用戶對嵌入式學(xué)習(xí)的需求,具體如下:
針對應(yīng)用電子專業(yè)——ZigBee模塊;
針對自動化專業(yè)——GPS模塊;
針對機(jī)電一體化專業(yè)——電機(jī)模塊;
針對電氣自動化專業(yè)——電壓轉(zhuǎn)換模塊。
其總體構(gòu)成可表現(xiàn)為:嵌入式教學(xué)開發(fā)平臺=通用硬件平臺+通用軟件平臺+項目化專業(yè)模塊群。
圖2為作者構(gòu)建的嵌入式項目化教學(xué)開發(fā)平臺的總體方案設(shè)計。它主要由通用硬件平臺、軟件平臺、及項目化的專業(yè)應(yīng)用模塊群三個部分組成。其中通用硬件與軟件平臺是整個系統(tǒng)的主體,而項目化的專業(yè)應(yīng)用模塊群則是整個系統(tǒng)的主導(dǎo)。

圖2 嵌入式項目化教學(xué)開發(fā)系統(tǒng)平臺結(jié)構(gòu)
在嵌入式項目化教學(xué)開發(fā)平臺的構(gòu)建中,通用硬件平臺是系統(tǒng)軟件的運行環(huán)境,也是項目化專業(yè)應(yīng)用模塊構(gòu)建的基礎(chǔ)。通用硬件開發(fā)平臺主要由以下幾部分組成:微處理器(ARM架構(gòu))、內(nèi)存、外存和外圍設(shè)備。此外,還包括一些常用的標(biāo)準(zhǔn)接口,如UART、USB、I2C、SPI等。對硬件平臺設(shè)計作如下規(guī)劃:
①根據(jù)系統(tǒng)外圍設(shè)計的需求情況,選擇一款含ARM 9核的微處理器芯片。選擇時,要綜合考慮其性能、功耗、價格、開發(fā)難度和技術(shù)支持等因素。
②圍繞ARM 9核芯片構(gòu)建通用硬件開發(fā)平臺,注重其整體性能。
③在硬件平臺上擴(kuò)展相關(guān)功能接口,如UART、USB、ADC等。
在通用硬件平臺設(shè)計規(guī)劃的基礎(chǔ)上、結(jié)合總體方案構(gòu)思,作者更進(jìn)一步地設(shè)計出嵌入式項目化教學(xué)開發(fā)系統(tǒng)平臺的硬件架構(gòu),具體如圖3所示。

圖3 開發(fā)系統(tǒng)硬件架構(gòu)
圖3中,ARM 9處理器是整個開發(fā)平臺的核心部分,完成大部分的數(shù)據(jù)處理任務(wù);同時ARM 9還分別與4個專業(yè)模塊通信互連,構(gòu)成獨立的模塊子系統(tǒng),分別實現(xiàn)各自的專業(yè)功能,實現(xiàn)嵌入式在該專業(yè)的項目應(yīng)用和教學(xué)。此外,作者在構(gòu)建硬件架構(gòu)時已預(yù)留出足夠的相關(guān)接口,便于后期更多專業(yè)模塊的接入。
軟件平臺是項目化教學(xué)開發(fā)系統(tǒng)平臺的“管理者”,主要由嵌入式操作系統(tǒng)、應(yīng)用程序和驅(qū)動程序構(gòu)成。其中,操作系統(tǒng)是整個軟件的核心,通過它可以實現(xiàn)對各模塊及其應(yīng)用程序的管理和控制。
在進(jìn)行軟件設(shè)計時,考慮到項目化教學(xué)開發(fā)平臺的專業(yè)模塊較多且各不相同,為方便模塊開發(fā)和接入,軟件平臺系統(tǒng)將采用層次結(jié)構(gòu)進(jìn)行設(shè)計,如圖4所示。從上到下分別是應(yīng)用層、U I層、系統(tǒng)內(nèi)核層、引導(dǎo)層和硬件層。當(dāng)有更多模塊需要接入時,只需在用戶層加載就可以運行該項目模塊,極大地方便了LBE專業(yè)模塊群的開發(fā);同時這種層次性的架構(gòu)還有助于開發(fā)系統(tǒng)的跨平臺移植。

圖4 開發(fā)系統(tǒng)軟件架構(gòu)
本文從分析當(dāng)前嵌入式系統(tǒng)的項目化教學(xué)改革和產(chǎn)品開發(fā)的需求入手,提出了一種基于嵌入式系統(tǒng)的項目化教學(xué)開發(fā)系統(tǒng)平臺的總體設(shè)計方案。基于嵌入式系統(tǒng)的設(shè)計特點,以項目化的教學(xué)理念為指導(dǎo),結(jié)合當(dāng)前高校的嵌入式系統(tǒng)教學(xué)改革,設(shè)計出4個針對不同專業(yè)需求的應(yīng)用模塊,從硬件和軟件上完成了嵌入式系統(tǒng)項目化教學(xué)開發(fā)系統(tǒng)平臺的構(gòu)建,實現(xiàn)了對嵌入式系統(tǒng)的項目化教學(xué)。
根據(jù)項目化理念構(gòu)建的嵌入式系統(tǒng)項目化教學(xué)開發(fā)平臺與其它嵌入式系統(tǒng)教學(xué)開發(fā)平臺相比,其特色主要體現(xiàn)在:
①采用“項目化教學(xué)”的設(shè)計理念,便于用戶理解和快速入門嵌入式系統(tǒng),真正實現(xiàn)了“做中學(xué)”和“學(xué)中做”的教育模式;
②“專業(yè)模塊”的設(shè)置和“專業(yè)項目”的學(xué)習(xí)方式,不但解放了老師,而且方便了不同專業(yè)出身和行業(yè)背景 的用戶對嵌入式系統(tǒng)學(xué)習(xí)的需求;
③創(chuàng)新型的通用開發(fā)平臺加專業(yè)模塊群的設(shè)計方案,便于用戶根據(jù)具體情況,自我選擇、自我學(xué)習(xí)以及自我構(gòu)建模塊的設(shè)計與實現(xiàn);
④模塊的構(gòu)建均以具體的工程應(yīng)用為基礎(chǔ),直接增加工作經(jīng)驗,理論和實踐得到雙重提升,具有實際開發(fā)的指導(dǎo)意義;
⑤本教學(xué)開發(fā)平臺不但適合于高校、高職院和企業(yè)培訓(xùn)機(jī)構(gòu),還適合于單個嵌入式系統(tǒng)學(xué)習(xí)者或企業(yè)工程師,具有應(yīng)用范圍廣、層次深等優(yōu)點。
[1]姜大源.當(dāng)代德國職業(yè)教育主流教學(xué)思想研究[M].北京:清華大學(xué)出版社,2006.
[2]劉科,祁春清.職業(yè)教育中項目化教學(xué)研究與實踐[J].職業(yè)技術(shù),2008(9):4-5.
[3]李慶誠,劉嘉欣,張金.嵌入式系統(tǒng)原理[M].北京:北京航空航天大學(xué)出版社,2007.