牛薌潔 李小順
[摘要]隨著嵌入式技術(shù)的應(yīng)用不斷發(fā)展,許多高等院校計(jì)算機(jī)、電子、軟件等專業(yè)針對(duì)市場(chǎng)需求,開設(shè)了嵌入式方向相關(guān)課程,本文結(jié)合實(shí)際教學(xué)經(jīng)驗(yàn),提出了基于ARM體系的嵌入式方向課程設(shè)置與教學(xué)方案,力求達(dá)到適應(yīng)學(xué)生畢業(yè)后的實(shí)際應(yīng)用所具有的知識(shí)與能力的培養(yǎng)又滿足社會(huì)就業(yè)需求的教學(xué)目標(biāo),進(jìn)而探討了嵌入式方向構(gòu)建三位一體的教學(xué)體系,并且給出了一些建議。
[關(guān)鍵詞]ARM體系 嵌入式方向 課程設(shè)置
[中圖分類號(hào)]G643 [文獻(xiàn)標(biāo)識(shí)碼]A
引言
隨著嵌入式系統(tǒng)的廣泛應(yīng)用,許多高等院校計(jì)算機(jī)、電子、軟件等專業(yè)針對(duì)市場(chǎng)需求,開設(shè)了嵌入式方向相關(guān)課程,然而同嵌入式技術(shù)的飛速發(fā)展和巨大的產(chǎn)業(yè)需求相比,我國(guó)高等教育體系下的嵌入式方向相關(guān)課程設(shè)置存在教學(xué)知識(shí)陳舊,缺乏實(shí)踐鍛煉,無(wú)法適應(yīng)企業(yè)的實(shí)際需要等問(wèn)題,本文首先結(jié)合我校辦學(xué)特色和實(shí)際教學(xué)情況,闡述了基于ARM體系的嵌入式方向課程設(shè)置與教學(xué)方案,進(jìn)而探討了農(nóng)業(yè)院校應(yīng)用型計(jì)算機(jī)類嵌入式方向教學(xué)過(guò)程中存在的問(wèn)題,最后對(duì)存在的問(wèn)題給出了一些建議,對(duì)其他地方院校應(yīng)用型嵌入式系統(tǒng)開發(fā)人才培養(yǎng)將起到一定的借鑒作用。
一、計(jì)算機(jī)專業(yè)嵌入式方向培養(yǎng)目標(biāo)與課程設(shè)置
(1)計(jì)算機(jī)專業(yè)嵌入式方向培養(yǎng)目標(biāo)
我校計(jì)算機(jī)專業(yè)嵌入式系統(tǒng)方向培養(yǎng)整體目標(biāo)是注重工程能力培養(yǎng)的嵌入式系統(tǒng)人才培養(yǎng)目標(biāo),尤其側(cè)重嵌入式系統(tǒng)工程應(yīng)用編程等軟件設(shè)計(jì)開發(fā)。根據(jù)學(xué)生的接受能力以及我校的辦學(xué)特色,具體嵌入式系統(tǒng)的學(xué)習(xí)體現(xiàn)層次性、漸進(jìn)性、注重操作性,在教學(xué)中注重培養(yǎng)在農(nóng)業(yè)領(lǐng)域中的嵌入式系統(tǒng)應(yīng)用能力。
(2)嵌入式方向課程設(shè)置
我校于2012年購(gòu)買了30套基于ARM體系的嵌入式開發(fā)實(shí)驗(yàn)平臺(tái)設(shè)備,可實(shí)現(xiàn)每人一臺(tái)的教學(xué)環(huán)境,其中嵌入式開發(fā)平臺(tái)采用ARM11的UP-Magic6410核心開發(fā)板,所以嵌入式方向的課程設(shè)置都是圍繞ARM體系展開教學(xué)內(nèi)容。
嵌入式方向課程設(shè)置遵循四個(gè)“1”,即“一種主流嵌入式微處理器、一門開發(fā)語(yǔ)言、一種嵌入式操作系統(tǒng)、一套開發(fā)工具”,嵌入式微處理器采用S3C6410X(ARM11),嵌入式開發(fā)語(yǔ)言主要以C語(yǔ)言為主,其他如匯編語(yǔ)言、C++語(yǔ)言、Java語(yǔ)言等為輔;嵌入式操作系統(tǒng)采用Linux;集成開發(fā)工具以ADS為主,輔助Windows CE開發(fā)工具,這樣就能達(dá)到系統(tǒng)學(xué)習(xí)嵌入式技術(shù)的要求。表1是我校嵌入式方向?qū)I(yè)課設(shè)置時(shí)間和學(xué)時(shí)整體情況。
表1:專業(yè)基礎(chǔ)及專業(yè)課設(shè)置情況
嵌入式導(dǎo)論課程:介紹嵌入式的主要應(yīng)用領(lǐng)域、嵌入式軟件開發(fā)的基本概念、嵌入式軟件開發(fā)的基本流程和基本方法、嵌入式系統(tǒng)的特點(diǎn)。
嵌入式操作系統(tǒng)課程:介紹嵌入式系統(tǒng)基本知識(shí),嵌入式操作系統(tǒng)與通用操作系統(tǒng)的差別。結(jié)合典型的嵌入式操作系統(tǒng)對(duì)操作系統(tǒng)的基本構(gòu)成、工作機(jī)制、系統(tǒng)移植剪裁和實(shí)時(shí)任務(wù)調(diào)度等內(nèi)容進(jìn)行介紹。我校根據(jù)具體情況選擇、Linux、WinCE等嵌入式操作系統(tǒng)進(jìn)行教學(xué)。
嵌入式程序設(shè)計(jì)基礎(chǔ):介紹嵌入式系統(tǒng)體系結(jié)構(gòu)、嵌入式系統(tǒng)設(shè)計(jì)的基本方法、軟件編程及外圍設(shè)備接口和驅(qū)動(dòng)等。通過(guò)該課程的學(xué)習(xí),學(xué)生了解和掌握必要的嵌入式系統(tǒng)設(shè)計(jì)方法學(xué)的概念、方法和工具嵌入式程序設(shè)計(jì)基礎(chǔ),掌握嵌入式系統(tǒng)的基本原理與設(shè)計(jì)開發(fā)思想,學(xué)生能完成簡(jiǎn)單的嵌入式系統(tǒng)的軟硬件設(shè)計(jì)。
JAVA開發(fā)語(yǔ)言:介紹Java語(yǔ)言的體系結(jié)構(gòu)、Java語(yǔ)言的基本概念和程序設(shè)計(jì)的基礎(chǔ)知識(shí)、面向?qū)ο蟮某绦蛟O(shè)計(jì)的思路和方法。培養(yǎng)學(xué)生的編程能力,使學(xué)生能夠運(yùn)用Java語(yǔ)言作為完成應(yīng)用程序設(shè)計(jì)。
嵌入式接口技術(shù):介紹鍵盤接口、LED顯示器接口、觸摸屏、通信接口、中斷接口、A/D和D/A轉(zhuǎn)換、ARM的JTAG接口。
嵌入式高級(jí)編程:介紹Android嵌入式開發(fā)環(huán)境搭建的方法,項(xiàng)目結(jié)構(gòu);Android的體系結(jié)構(gòu),嵌入式軟件開發(fā)流程;嵌入式特性開發(fā),多媒體開發(fā),數(shù)據(jù)存儲(chǔ)開發(fā),聯(lián)網(wǎng)開發(fā)等開發(fā)方法,學(xué)生通過(guò)實(shí)踐能達(dá)到獨(dú)立完成開發(fā)單機(jī)、網(wǎng)絡(luò)嵌入式軟件的能力。
嵌入式課程是實(shí)操性極強(qiáng)的課程,因此實(shí)踐教學(xué)在嵌入式培養(yǎng)體系中占有重要的地位,既是理論講解的驗(yàn)證與升華,又是培養(yǎng)學(xué)生創(chuàng)新思維和獨(dú)立分析解決問(wèn)題能力的重要途徑。我校的嵌入式方向?qū)嵺`教學(xué)課程設(shè)置時(shí)間和學(xué)時(shí)大致如下表2所示。
表2:嵌入式課程實(shí)踐教學(xué)設(shè)置情況
嵌入式操作系統(tǒng)實(shí)驗(yàn)內(nèi)容:典型的嵌入式操作系統(tǒng)的基本構(gòu)成、工作機(jī)制、系統(tǒng)移植剪裁和實(shí)時(shí)任務(wù)調(diào)度等。我校根據(jù)具體情況選擇Linux嵌入式操作系統(tǒng)進(jìn)行教學(xué)。
嵌入式程序設(shè)計(jì)基礎(chǔ)實(shí)驗(yàn)內(nèi)容:在現(xiàn)有的嵌入式開發(fā)平臺(tái)上完成嵌入式系統(tǒng)設(shè)計(jì)的基本方法、軟件編程及外圍設(shè)備接口和驅(qū)動(dòng)等,學(xué)生掌握必要的嵌入式系統(tǒng)設(shè)計(jì)方法學(xué)的概念、方法和工具嵌入式程序設(shè)計(jì)基礎(chǔ),掌握嵌入式系統(tǒng)的基本原理與設(shè)計(jì)開發(fā)思想,能完成簡(jiǎn)單的嵌入式系統(tǒng)的軟硬件設(shè)計(jì)。
JAVA開發(fā)語(yǔ)言實(shí)驗(yàn)內(nèi)容: Java語(yǔ)言程序設(shè)計(jì)的基礎(chǔ)知識(shí)、面向?qū)ο蟮某绦蛟O(shè)計(jì)的思路和方法,學(xué)生能夠運(yùn)用Java語(yǔ)言作為完成應(yīng)用程序設(shè)計(jì)。
嵌入式接口技術(shù)實(shí)驗(yàn)內(nèi)容:包括鍵盤接口、LED顯示器接口、觸摸屏、通信接口、中斷接口、A/D和D/A轉(zhuǎn)換、ARM的JTAG接口等實(shí)驗(yàn)。
嵌入式高級(jí)編程實(shí)驗(yàn)內(nèi)容:基于Android嵌入式開發(fā)環(huán)境搭建的方法;Android嵌入式軟件開發(fā)流程;嵌入式特性開發(fā),多媒體開發(fā),數(shù)據(jù)存儲(chǔ)開發(fā),聯(lián)網(wǎng)開發(fā)等開發(fā)方法,學(xué)生通過(guò)實(shí)踐能達(dá)到獨(dú)立完成開發(fā)單機(jī)、網(wǎng)絡(luò)嵌入式軟件的能力。
二、三位一體的嵌入式課程教學(xué)體系建設(shè)
我校嵌入式系統(tǒng)方向?qū)W習(xí)側(cè)重嵌入式軟件設(shè)計(jì)部分,實(shí)驗(yàn)室選用UP-Magic6410嵌入式實(shí)驗(yàn)開發(fā)平臺(tái),著重培養(yǎng)學(xué)生在該平臺(tái)下進(jìn)行嵌入式Linux程序開發(fā)的相關(guān)環(huán)境搭建與軟件設(shè)計(jì)方法的能力。針對(duì)各模塊以及物聯(lián)網(wǎng)的應(yīng)用背景,按照由淺入深,不同課程層次對(duì)應(yīng)不同實(shí)驗(yàn)項(xiàng)目等原則,循序漸進(jìn),逐步提高,以滿足不同階段的教學(xué)要求,為學(xué)生提高了動(dòng)手能力,為進(jìn)一步的實(shí)踐開發(fā)和畢業(yè)設(shè)計(jì)打下了良好的基礎(chǔ),因此,我們提出了三位一體的嵌入式方向課程教學(xué)體系結(jié)構(gòu),如圖1所示。
圖1:嵌入式方向教學(xué)體系結(jié)構(gòu)
(1)基礎(chǔ)型
基礎(chǔ)性包括基礎(chǔ)知識(shí)和基本技能,主要是為了滿足基本的教學(xué)要求和教學(xué)目標(biāo),課程包括ARM體系的基本知識(shí)、基本技能以及基礎(chǔ)類實(shí)驗(yàn)的開展。
教師在基礎(chǔ)性課程實(shí)施時(shí),可以根據(jù)各自的科研項(xiàng)目按照模塊化將案例分解到各個(gè)部分,鼓勵(lì)學(xué)生對(duì)實(shí)例所采用的技術(shù)和方案進(jìn)行不同角度的評(píng)價(jià),變被動(dòng)知識(shí)灌輸為主動(dòng)探索思考,使教學(xué)理論知識(shí)與科研實(shí)踐有機(jī)地結(jié)合在一起。
(2)提高型
提高型包括ARM體系基礎(chǔ)型知識(shí)的深化和提升,包括理論知識(shí)和實(shí)踐內(nèi)容的進(jìn)一步深化,理論知識(shí)包括嵌入式編程的設(shè)計(jì)思想和設(shè)計(jì)方法的提高,實(shí)踐教學(xué)包括設(shè)計(jì)類實(shí)驗(yàn),每個(gè)實(shí)驗(yàn)課題規(guī)定1周或更長(zhǎng)的時(shí)間讓學(xué)生動(dòng)手設(shè)計(jì)開發(fā)嵌入式應(yīng)用程序,在強(qiáng)調(diào)基礎(chǔ)性知識(shí)掌握的同時(shí),鼓勵(lì)學(xué)生創(chuàng)新的綜合設(shè)計(jì)。使得學(xué)生既掌握了一些具體的通用的嵌入式系統(tǒng)的開發(fā)方法,也能發(fā)揮主觀能動(dòng)性,獨(dú)立設(shè)計(jì)并實(shí)現(xiàn)較完整的嵌入式系統(tǒng),激發(fā)學(xué)習(xí)、創(chuàng)造熱情。要求學(xué)生課外查找資料進(jìn)一步地學(xué)習(xí),引導(dǎo)學(xué)生進(jìn)行主動(dòng)性學(xué)習(xí),對(duì)某些問(wèn)題進(jìn)行深入的分析研究,進(jìn)而提出自己的設(shè)計(jì)思想,教師全程指導(dǎo)學(xué)生答疑指導(dǎo)工作,啟發(fā)學(xué)生進(jìn)行嵌入式編程,為學(xué)生提供一些解決問(wèn)題的方法。
(3)綜合型
綜合型主要指的是依托科研項(xiàng)目實(shí)踐來(lái)鍛煉和提高學(xué)生動(dòng)手能力。科研項(xiàng)目可以包括教師的科研項(xiàng)目、學(xué)生的科研項(xiàng)目以及依托科研項(xiàng)目或?qū)嵺`基地完成的畢業(yè)設(shè)計(jì)項(xiàng)目。
嵌入式方向課程授課教師可以鼓勵(lì)學(xué)生參與到教師科研項(xiàng)目之中,如筆者主持的嵌入式系統(tǒng)溫室環(huán)境監(jiān)控系統(tǒng)應(yīng)用項(xiàng)目,學(xué)生直接參與到前沿的課題和項(xiàng)目中去,成立了興趣小組,將溫室環(huán)境監(jiān)控系統(tǒng)分解成若干子題目,交由各興趣小組,模擬項(xiàng)目的形式實(shí)踐開發(fā),真正做到“在學(xué)中做,在做中學(xué)”,以務(wù)實(shí)的項(xiàng)目培養(yǎng)學(xué)生的實(shí)踐科研能力。
近年來(lái),北京地區(qū)大學(xué)生課外科技活動(dòng)開展的力度逐年加大,筆者指導(dǎo)的學(xué)生主持的北京市大學(xué)生科研計(jì)劃,利用嵌入式平臺(tái),對(duì)溫室環(huán)境等參數(shù)檢測(cè),進(jìn)而對(duì)溫室大棚實(shí)現(xiàn)智能化控制,學(xué)生在該課題中,運(yùn)用所學(xué)理論知識(shí),系統(tǒng)的完成了整個(gè)項(xiàng)目,獲得了北京市大學(xué)生科研計(jì)劃成果二等獎(jiǎng),尤其值得一提的是,畢業(yè)的學(xué)生在擔(dān)任京郊村官期間,將課題成果應(yīng)用于所服務(wù)的村鎮(zhèn),取得了良好的效果。實(shí)踐證明,鼓勵(lì)學(xué)生參與課外科技活動(dòng),將會(huì)拓展學(xué)生的知識(shí)體系,并學(xué)以致用,對(duì)進(jìn)一步提高學(xué)習(xí)興趣以及培養(yǎng)合作精神發(fā)揮了至關(guān)重要的作用。
學(xué)生的畢業(yè)設(shè)計(jì)是所學(xué)知識(shí)的綜合運(yùn)用的過(guò)程,學(xué)生從事的畢業(yè)設(shè)計(jì)已經(jīng)不僅僅是課程實(shí)踐教學(xué),而且還是從事科學(xué)研究的過(guò)程。為了保證提供充分的畢業(yè)設(shè)計(jì)時(shí)間,提高設(shè)計(jì)論文和專業(yè)課的學(xué)習(xí)質(zhì)量,做到有的放矢,我們將畢業(yè)論文提前到第七學(xué)期安排任務(wù),進(jìn)行設(shè)計(jì)任務(wù)的前期準(zhǔn)備及調(diào)試工作。
三、建議
(1)采取層次化的知識(shí)體系
嵌入式方向的理論知識(shí)體系體現(xiàn)專業(yè)基礎(chǔ)知識(shí)、專業(yè)綜合知識(shí)、專業(yè)系統(tǒng)知識(shí)由易到難的漸進(jìn)性和層次化。
專業(yè)基礎(chǔ)知識(shí)包括嵌入式導(dǎo)論、嵌入式操作系統(tǒng)、嵌入式程序設(shè)計(jì)基礎(chǔ)等課程,這些課程的學(xué)習(xí)包括嵌入式系統(tǒng)基本概念、典型的嵌入式操作系統(tǒng)的基本構(gòu)成、工作機(jī)制、系統(tǒng)移植剪裁和實(shí)時(shí)任務(wù)調(diào)度等;嵌入式系統(tǒng)設(shè)計(jì)的基本方法、軟件編程及外圍設(shè)備接口和驅(qū)動(dòng)等內(nèi)容。學(xué)生通過(guò)這些課程的學(xué)習(xí)目標(biāo)是掌握必要的嵌入式系統(tǒng)設(shè)計(jì)方法學(xué)的概念、方法和工具嵌入式程序設(shè)計(jì)基礎(chǔ),掌握嵌入式系統(tǒng)的基本原理與設(shè)計(jì)開發(fā)思想,能完成簡(jiǎn)單的嵌入式系統(tǒng)的軟硬件設(shè)計(jì)。
專業(yè)綜合知識(shí)包括嵌入式高級(jí)編程、通過(guò)實(shí)踐課程獲得的綜合性知識(shí)。這些內(nèi)容包括智能終端的嵌入式軟件開發(fā)方法、編程開發(fā)流程;數(shù)據(jù)存儲(chǔ)開發(fā)、聯(lián)網(wǎng)開發(fā)等開發(fā)方法,學(xué)生通過(guò)學(xué)習(xí)能達(dá)到獨(dú)立完成開發(fā)單機(jī)、網(wǎng)絡(luò)嵌入式軟件的能力。
專業(yè)系統(tǒng)知識(shí)包括基于行業(yè)背景的嵌入式軟件開發(fā)知識(shí),這一層次是通過(guò)專業(yè)實(shí)習(xí)和畢業(yè)設(shè)計(jì)的環(huán)節(jié)完成的,也就是通過(guò)實(shí)踐綜合完成的項(xiàng)目后獲得的知識(shí),這不僅涵蓋了符合社會(huì)需求的嵌入式方向的新知識(shí)、新技術(shù),還包括企業(yè)的項(xiàng)目實(shí)施機(jī)制等無(wú)法從學(xué)校課本學(xué)習(xí)到的知識(shí),為學(xué)生順利走向社會(huì)工作崗位提供了重要的支持。
(2)采取多方位的實(shí)踐教學(xué)體系
嵌入式系統(tǒng)作為實(shí)操性極強(qiáng)的課程,通過(guò)強(qiáng)化夯實(shí)基礎(chǔ)實(shí)驗(yàn)、豐富實(shí)踐綜合教學(xué)內(nèi)容,獲取更多的實(shí)踐項(xiàng)目的多方位立體化實(shí)踐教學(xué)模式對(duì)培養(yǎng)高素質(zhì)嵌入式系統(tǒng)人才至關(guān)重要,目前,我院嵌入式實(shí)踐教學(xué)改革還處在起步階段,今后我們將在智慧農(nóng)業(yè)背景下,立足于農(nóng)業(yè)院校發(fā)展特色,將嵌入式系統(tǒng)實(shí)驗(yàn)實(shí)踐體系作進(jìn)一步完善,重點(diǎn)培養(yǎng)學(xué)生的創(chuàng)新思維和獨(dú)立分析解決問(wèn)題能力。
針對(duì)在校學(xué)生缺少行業(yè)背景知識(shí)這一問(wèn)題,需要大力開展與企業(yè)的相關(guān)合作,直接把學(xué)生派到企業(yè)進(jìn)行16周的專業(yè)實(shí)習(xí)甚至12周的畢業(yè)設(shè)計(jì),在工程實(shí)踐項(xiàng)目選擇上,應(yīng)該盡量選擇企業(yè)的實(shí)際項(xiàng)目,盡可能覆蓋嵌入式領(lǐng)域的內(nèi)容,比如嵌入式項(xiàng)目一般包括需求分析、硬件平臺(tái)設(shè)計(jì)、軟件平臺(tái)設(shè)計(jì)(包括嵌入式OS的選擇)、應(yīng)用程序的開發(fā)與系統(tǒng)測(cè)試等多方面,使學(xué)生能夠通過(guò)查閱一定的資料,利用所學(xué)的知識(shí)解決工程實(shí)際中的問(wèn)題。學(xué)生在實(shí)踐工程項(xiàng)目中完成畢業(yè)設(shè)計(jì)和論文,綜合能力得到極大的提升,同時(shí)學(xué)生可以掌握企業(yè)項(xiàng)目的實(shí)施機(jī)制,為畢業(yè)后快速進(jìn)入項(xiàng)目開發(fā)打下良好和基礎(chǔ),從而實(shí)現(xiàn)人才培養(yǎng)和社會(huì)需求的無(wú)縫對(duì)接。
四、結(jié)語(yǔ)
隨著嵌入式技術(shù)的高速發(fā)展,嵌入式方向課程體系也應(yīng)不斷改進(jìn)與之相適應(yīng)。本文從ARM體系的嵌入式方向培養(yǎng)目標(biāo)出發(fā),提出了三位一體的課程體系結(jié)構(gòu),采取層次化理論知識(shí)和多方位的實(shí)踐教學(xué)方式,使學(xué)生在學(xué)校就具備扎實(shí)的專業(yè)知識(shí)和技能,最后將學(xué)生送入實(shí)訓(xùn)基地做企業(yè)實(shí)際項(xiàng)目,為學(xué)生走向工作崗位打下良好的基礎(chǔ),最終達(dá)到計(jì)算機(jī)專業(yè)嵌入式方向的教學(xué)和培養(yǎng)目標(biāo)。
[參考文獻(xiàn)]
[1]徐欣,于紅旗,盧啟中."嵌入式系統(tǒng)設(shè)計(jì)技術(shù)"課程教學(xué)研討[J].高等教育研究學(xué)報(bào),2004,27(2):59-60
[2]徐遠(yuǎn)超,張聰霞,關(guān)永.嵌入式系統(tǒng)專業(yè)課程教學(xué)存在的問(wèn)題與思考[J].計(jì)算機(jī)教育,2009(18):85-86.
[3]田澤.嵌入式系統(tǒng)開發(fā)與應(yīng)用教程[M].北京:北京航空航天大學(xué)出版社,2005:1-48
[4]李巖,王小玉,孫永春.嵌入式系統(tǒng)教學(xué)研究[J].電氣電子教學(xué)學(xué)報(bào),2006,28(3):45-47,90
[5]李曦,周亦男,周學(xué)海."嵌入式系統(tǒng)設(shè)計(jì)"系列課程建設(shè)[J].教育與現(xiàn)代化,2004(4):48-51
[6]殷建軍,張明武,尹令.嵌入式系統(tǒng)課程現(xiàn)狀分析與對(duì)策研究[J].計(jì)算機(jī)教育,2010(14):114-117.
(作者單位:北京農(nóng)學(xué)院 計(jì)算機(jī)與信息工程學(xué)院 北京)