韓 磊 黃 堅(jiān) 曹欲曉
摘要:結(jié)合應(yīng)用型本科院校實(shí)際,分析了嵌入式系統(tǒng)教學(xué)過(guò)程中的三大矛盾。從課程教學(xué)體系、實(shí)驗(yàn)教學(xué)體系等方面探討了應(yīng)用型高校的嵌入式系統(tǒng)教學(xué)模式、方法和手段。教學(xué)實(shí)踐表明:課程內(nèi)容滲透,課堂抓基礎(chǔ),課后抓實(shí)踐的教學(xué)經(jīng)驗(yàn)值得推廣。
關(guān)鍵詞:嵌入式系統(tǒng);教學(xué)模式;課程體系;實(shí)驗(yàn)體系
中圖分類(lèi)號(hào):G424 文獻(xiàn)標(biāo)識(shí)碼:A 文章編號(hào):1009-3044(2009)15-4087-02
Method of Embedded System Teaching in Application-orientation Colleges
HAN Lei,HUANG Jian, CAO Yu-xiao
(School of Computer Engineering, Nanjing Institute of Technology, Nanjing 211167, China)
Abstract: According to actual conditions of application-orientation colleges, this paper states three contradictions in embedded system teaching. From aspects of education, experiment and so on, the paper discusses some issues of embedded system education such as teaching pattern, method and means in application-orientation colleges. The conclusion is that scattering background knowledge, emphasizing basic in classroom, and doing experiments after class. Practice indicates that this teaching experience should be promoted.
Key words: embedded system; education; curriculum system; experimental system
1 引言
電子技術(shù)的進(jìn)步,尤其是微型機(jī)的出現(xiàn),推動(dòng)了科學(xué)研究的飛躍。隨著后PC時(shí)代的到來(lái),嵌入式技術(shù)以其靈活、高效和性價(jià)比高等諸多優(yōu)勢(shì),被廣泛應(yīng)用于科學(xué)研究、工程設(shè)計(jì)、軍事技術(shù)、文藝及商業(yè)等領(lǐng)域,成為后PC時(shí)代信息技術(shù)發(fā)展的主力軍。現(xiàn)在,嵌入式系統(tǒng)帶來(lái)的工業(yè)年產(chǎn)值已超過(guò)了1萬(wàn)億美元,市場(chǎng)潛力大,就業(yè)機(jī)會(huì)多。
因此,很多高校、職業(yè)技術(shù)學(xué)院和培訓(xùn)機(jī)構(gòu)紛紛開(kāi)展嵌入式系統(tǒng)的教學(xué)和培訓(xùn)工作。然而,各教學(xué)單位的辦學(xué)理念、辦學(xué)條件、教師實(shí)力和學(xué)生水平良莠不齊,所以嵌入式系統(tǒng)教學(xué)模式也應(yīng)該因地制宜、因材施教。本文針對(duì)應(yīng)用型本科院校的實(shí)際情況和嵌入式系統(tǒng)的特點(diǎn),提出嵌入式系統(tǒng)教學(xué)的若干思考,探討應(yīng)用型高校嵌入式系統(tǒng)教學(xué)之路。通過(guò)課堂教學(xué)、課程設(shè)計(jì)、畢業(yè)設(shè)計(jì)等教學(xué)實(shí)踐環(huán)節(jié),取得了良好效果。
2 教學(xué)實(shí)踐中的矛盾
嵌入式系統(tǒng)是以應(yīng)用為中心,以計(jì)算機(jī)技術(shù)為基礎(chǔ),并且軟硬件可裁剪,適用于應(yīng)用系統(tǒng)對(duì)功能、可靠性、成本、體積、功耗有嚴(yán)格要求的專(zhuān)用計(jì)算機(jī)系統(tǒng)[1]。嵌入式系統(tǒng)的學(xué)習(xí)需要扎實(shí)的計(jì)算機(jī)基礎(chǔ)知識(shí)、持之以恒的鉆研精神、實(shí)踐鍛煉與方法歸納的能力。然而,在應(yīng)用型本科院校的嵌入式系統(tǒng)教學(xué)過(guò)程中,存在基礎(chǔ)與目標(biāo)、過(guò)程與結(jié)果等方面的矛盾,困擾著嵌入式系統(tǒng)教學(xué)。
2.1 知識(shí)需求與知識(shí)背景的矛盾
嵌入式系統(tǒng)是嵌入到對(duì)象體系中的專(zhuān)用計(jì)算機(jī)系統(tǒng)。螞蟻雖小五臟俱全,嵌入式系統(tǒng)本質(zhì)上是一個(gè)專(zhuān)用計(jì)算機(jī)系統(tǒng),包括硬件、軟件和固件等方面的知識(shí)[2]。因此,學(xué)習(xí)嵌入式系統(tǒng)需要全面的基礎(chǔ)知識(shí),例如:硬件方面,只了解處理器的寄存器、工作模式是不夠的,還應(yīng)理解存儲(chǔ)器及存儲(chǔ)映射、尋址方式和調(diào)試接口,掌握具體處理器芯片的外圍設(shè)備、接口技術(shù)與硬件設(shè)計(jì)等等;軟件方面,單純了解操作系統(tǒng)的工作原理、體系結(jié)構(gòu)、API調(diào)用和應(yīng)用程序開(kāi)發(fā)也是不夠的,開(kāi)發(fā)者還要關(guān)注操作系統(tǒng)的移植和引導(dǎo)啟動(dòng)、地址映射、驅(qū)動(dòng)程序開(kāi)發(fā)等復(fù)雜的細(xì)節(jié)問(wèn)題。面對(duì)嵌入式系統(tǒng)龐大的知識(shí)體系,不同專(zhuān)業(yè)的學(xué)生往往因?yàn)楸尘爸R(shí)匱乏而顯得力不從心。計(jì)算機(jī)科學(xué)與技術(shù)專(zhuān)業(yè)的學(xué)生由數(shù)據(jù)結(jié)構(gòu)、編譯原理、操作系統(tǒng)等專(zhuān)業(yè)核心課程做支撐,學(xué)習(xí)嵌入式軟件開(kāi)發(fā)的難度不是很大,但是對(duì)于硬件系統(tǒng)的比較、選擇、理解、分析和設(shè)計(jì),感覺(jué)很吃力;而電子信息科學(xué)與技術(shù)專(zhuān)業(yè)的學(xué)生,情況卻相反,他們強(qiáng)于硬件分析設(shè)計(jì),弱在嵌入式系統(tǒng)軟件開(kāi)發(fā)。這就形成了嵌入式系統(tǒng)的全面知識(shí)需求與學(xué)生背景知識(shí)不足之間的矛盾,該矛盾普遍存在于嵌入式系統(tǒng)教學(xué)過(guò)程中。
2.2 課程內(nèi)容與課時(shí)量之間的矛盾
應(yīng)用型本科院校和大多數(shù)高校一樣,采用了學(xué)分制教育模式。學(xué)分制的優(yōu)點(diǎn)自然很多,比如更加靈活、機(jī)動(dòng)和高效等等,但是學(xué)分制也造成了大課時(shí)量課程的銳減。多數(shù)課程精兵簡(jiǎn)政,以小學(xué)分形式,成為學(xué)分制教育模式下的瑞士軍刀,在學(xué)生喜好間游刃有余。在這種情況下,嵌入式系統(tǒng)課程自然也是小巧玲瓏,通常只有32學(xué)時(shí)或48學(xué)時(shí);然而,嵌入式系統(tǒng)涉及的知識(shí)面非常廣泛,需要講解和實(shí)踐驗(yàn)證的內(nèi)容較多。這樣,就形成了龐大的課程內(nèi)容和偏少的課時(shí)量之間的矛盾。
2.3 授之以魚(yú)和授之以漁的矛盾
近年來(lái),我國(guó)大學(xué)生的就業(yè)問(wèn)題越來(lái)越嚴(yán)重,已經(jīng)引起社會(huì)各方面的廣泛關(guān)注。就業(yè)形勢(shì)由精英教育階段的賣(mài)方市場(chǎng)轉(zhuǎn)向當(dāng)前的買(mǎi)方市場(chǎng)。用人單位紛紛提高任用標(biāo)準(zhǔn),一方面:追求學(xué)歷層次,裝潢門(mén)面,造成人才高消費(fèi)現(xiàn)象;另一方面:忽視人才再培養(yǎng),強(qiáng)調(diào)上崗即可獨(dú)當(dāng)一面,奉行“拿來(lái)主義”。這種形勢(shì)對(duì)應(yīng)用型本科院校的人才培養(yǎng)提出了更高要求,尤其對(duì)嵌入式系統(tǒng)人才培養(yǎng)發(fā)出新挑戰(zhàn)。在嵌入式系統(tǒng)教學(xué)過(guò)程中,選擇“從基本原理入手,循序漸進(jìn),舉一反三,使學(xué)生達(dá)到融會(huì)貫通,具備從事嵌入式系統(tǒng)開(kāi)發(fā)的基本素質(zhì)和實(shí)踐技能”的授之以漁理念,還是走“直接瞄準(zhǔn)用人單位的需求,只求實(shí)用,不求通達(dá)”的授之以魚(yú)之路,是擺在教育工作者面前的兩難問(wèn)題,值得思考。
3 教學(xué)模式的改進(jìn)
面對(duì)教學(xué)實(shí)踐中的矛盾,必須對(duì)嵌入式系統(tǒng)的教學(xué)模式進(jìn)行一些改進(jìn)。改進(jìn)時(shí),應(yīng)堅(jiān)持如下原則:對(duì)于不同專(zhuān)業(yè)的學(xué)生,嵌入式系統(tǒng)教學(xué)的側(cè)重點(diǎn)應(yīng)該有所不同;將嵌入式系統(tǒng)的知識(shí)點(diǎn)分散于前期必修課中,充分運(yùn)用課程設(shè)計(jì)、畢業(yè)設(shè)計(jì)等實(shí)踐教學(xué)環(huán)節(jié)夯實(shí)基礎(chǔ)知識(shí)積累、掌握實(shí)用先進(jìn)技術(shù)。
3.1 將知識(shí)點(diǎn)分散于先修課程中
國(guó)內(nèi)部分院校開(kāi)設(shè)了嵌入式系統(tǒng)專(zhuān)業(yè)方向,主要課程設(shè)置大體相同,以ARM體系架構(gòu)和實(shí)時(shí)操作系統(tǒng)為切入點(diǎn),設(shè)置了由嵌入式系統(tǒng)專(zhuān)業(yè)課程、前驅(qū)課程、后續(xù)課程組成的課程組[3-4]。嵌入式系統(tǒng)專(zhuān)業(yè)課程包括:嵌入式系統(tǒng)設(shè)計(jì)與實(shí)例開(kāi)發(fā)、嵌入式處理器體系結(jié)構(gòu)與應(yīng)用、嵌入式系統(tǒng)編程語(yǔ)言、嵌入式實(shí)時(shí)操作系統(tǒng)原理與設(shè)計(jì)等;前驅(qū)課程包括:C語(yǔ)言程序設(shè)計(jì)、數(shù)模電子技術(shù)基礎(chǔ)、數(shù)據(jù)結(jié)構(gòu)、匯編語(yǔ)言、計(jì)算機(jī)接口技術(shù)、單片機(jī)原理與應(yīng)用、工業(yè)過(guò)程控制;后續(xù)課程包括:嵌入式軟件工程學(xué)、常用電路芯片介紹、EDA設(shè)計(jì)、UML在嵌入式系統(tǒng)開(kāi)發(fā)中的應(yīng)用。
很多應(yīng)用型本科院校的嵌入式系統(tǒng)不是獨(dú)立的專(zhuān)業(yè)方向,只是通過(guò)少量幾門(mén)課程對(duì)嵌入式系統(tǒng)做概括性介紹。這種情況下,必須將繁重的嵌入式系統(tǒng)教學(xué)內(nèi)容,滲透到其它相關(guān)課程教學(xué)中,比如:在C語(yǔ)言程序設(shè)計(jì)中,加入強(qiáng)化對(duì)位尋址、位運(yùn)算的內(nèi)容;在計(jì)算機(jī)原理課程中,加入對(duì)I2C、SPI總線以及USB的原理與應(yīng)用等內(nèi)容;在算法設(shè)計(jì)課程中,加入對(duì)低功耗計(jì)算的介紹;在數(shù)據(jù)結(jié)構(gòu)課程中,提高學(xué)生對(duì)算法時(shí)間復(fù)雜度和空間復(fù)雜度的分析能力;在操作系統(tǒng)課程中,強(qiáng)化實(shí)時(shí)調(diào)度的內(nèi)容并要求學(xué)生掌握簡(jiǎn)單的實(shí)時(shí)調(diào)度算法;在軟件工程中,增強(qiáng)學(xué)生對(duì)系統(tǒng)軟件可靠性、經(jīng)濟(jì)性的理解。這樣,通過(guò)課程滲透,大大降低了理論教學(xué)中原理性問(wèn)題的教學(xué)壓力,使內(nèi)容的安排可以向應(yīng)用傾斜,真正建立起符合應(yīng)用需求的嵌入式系統(tǒng)教學(xué)體系。同時(shí),在講授嵌入式系統(tǒng)專(zhuān)業(yè)課程時(shí),要根據(jù)不同專(zhuān)業(yè),把握不同的側(cè)重點(diǎn),比如:計(jì)算機(jī)專(zhuān)業(yè)的學(xué)生應(yīng)補(bǔ)充電路設(shè)計(jì)方面的能力,強(qiáng)化軟件開(kāi)發(fā)能力;電子信息專(zhuān)業(yè)的學(xué)生應(yīng)補(bǔ)充嵌入式軟件開(kāi)發(fā)能力,強(qiáng)化硬件電路設(shè)計(jì)能力。最終,將學(xué)生培養(yǎng)成“既通又專(zhuān)”的系統(tǒng)開(kāi)發(fā)人才。
3.2 將難點(diǎn)分散于多層次實(shí)驗(yàn)教學(xué)中
教學(xué)實(shí)驗(yàn)與理論學(xué)習(xí)是相輔相成、相互促進(jìn)的。教學(xué)實(shí)驗(yàn)必須和理論學(xué)習(xí)相結(jié)合起來(lái),不能脫節(jié),才能使學(xué)生做到“學(xué)以致用”。課堂上通過(guò)老師的講解學(xué)生可以掌握嵌入式系統(tǒng)基本概念、ARM 體系結(jié)構(gòu)、驅(qū)動(dòng)程序的開(kāi)發(fā)、應(yīng)用程序的開(kāi)發(fā)、調(diào)試技術(shù)等原理。在實(shí)驗(yàn)中,學(xué)生通過(guò)實(shí)踐可以深入理解嵌入式微處理器、建立嵌入式開(kāi)發(fā)環(huán)境、掌握各種接口技術(shù)等基礎(chǔ)知識(shí),另外,實(shí)踐環(huán)節(jié)還應(yīng)該激發(fā)學(xué)生向難點(diǎn)技術(shù)進(jìn)軍,努力學(xué)習(xí)新技術(shù)的熱情。
因此,實(shí)驗(yàn)教學(xué)體系的建立,應(yīng)堅(jiān)持循序漸進(jìn)的原則,根據(jù)教學(xué)內(nèi)容精選實(shí)驗(yàn),分層次設(shè)計(jì)實(shí)驗(yàn)內(nèi)容[5]。比如:將實(shí)驗(yàn)劃分為:驗(yàn)證性實(shí)驗(yàn)、綜合性實(shí)驗(yàn)、設(shè)計(jì)性實(shí)驗(yàn)等。
驗(yàn)證性實(shí)驗(yàn)采用理論授課與動(dòng)手實(shí)驗(yàn)相結(jié)合的方式,讓學(xué)生了解開(kāi)發(fā)環(huán)境和開(kāi)發(fā)流程,掌握實(shí)驗(yàn)開(kāi)發(fā)工具的使用方法,熟悉軟件編程環(huán)境,根據(jù)實(shí)驗(yàn)指導(dǎo)書(shū)的內(nèi)容進(jìn)行實(shí)驗(yàn)的調(diào)試,讀懂實(shí)驗(yàn)源程序和程序的運(yùn)行過(guò)程,并能進(jìn)行修改、組合和補(bǔ)充應(yīng)用編程。
綜合性實(shí)驗(yàn)是在驗(yàn)證性實(shí)驗(yàn)的基礎(chǔ)上,綜合整個(gè)課程的知識(shí),盡可能多地利用實(shí)驗(yàn)系統(tǒng)上的資源,構(gòu)造一個(gè)具有實(shí)際意義的嵌入式應(yīng)用系統(tǒng),即做一個(gè)較為復(fù)雜的綜合實(shí)驗(yàn)。
設(shè)計(jì)性實(shí)驗(yàn)的目的是使學(xué)生能夠更深入的掌握嵌入式系統(tǒng)的理論知識(shí),并有更多的實(shí)踐機(jī)會(huì)進(jìn)行綜合課題的設(shè)計(jì),從而培養(yǎng)學(xué)生的科研能力、創(chuàng)新能力和工程實(shí)踐能力。
在實(shí)驗(yàn)教學(xué)過(guò)程中,要充分調(diào)動(dòng)學(xué)生的學(xué)習(xí)積極性,培養(yǎng)開(kāi)發(fā)興趣,充分利用課余時(shí)間進(jìn)行嵌入式系統(tǒng)學(xué)習(xí),可以采用一些仿真軟件克服實(shí)驗(yàn)條件的限制,比如采用Skyeye等軟件虛擬嵌入式系統(tǒng)平臺(tái),進(jìn)行開(kāi)發(fā)研究。另外,還要充分利用課程設(shè)計(jì)和畢業(yè)設(shè)計(jì)等實(shí)踐環(huán)節(jié),鍛造企業(yè)需要的合格人才。
4 教學(xué)效果
在教學(xué)過(guò)程中,作者堅(jiān)持循序漸進(jìn)的教學(xué)策略。從51系列單片機(jī)入手,著重對(duì)比介紹ARM7體系結(jié)構(gòu)、ARM流水線、處理器狀態(tài)、處理器模式、內(nèi)部寄存器以及存儲(chǔ)映射等。以u(píng)C/OS-II作為重點(diǎn)研究嵌入式操作系統(tǒng)[6]。通過(guò)課堂教學(xué),使學(xué)生掌握了嵌入式系統(tǒng)開(kāi)發(fā)的基本原理、基本工具、基本方法、基本技能。在課程設(shè)計(jì)階段,一些同學(xué)通過(guò)自學(xué)可以在嵌入式Linux下做簡(jiǎn)單應(yīng)用開(kāi)發(fā)、一些同學(xué)能夠根據(jù)具體需求,針對(duì)具體ARM芯片擴(kuò)展外圍電路,設(shè)計(jì)電路圖。畢業(yè)設(shè)計(jì)從事嵌入式系統(tǒng)開(kāi)發(fā)的同學(xué),能夠在較短的時(shí)間內(nèi)理解復(fù)雜的嵌入式系統(tǒng)案例,并結(jié)合具體應(yīng)用深入細(xì)節(jié)、仔細(xì)剖析,基本達(dá)到用人單位的雇用要求。
事實(shí)證明,利用有限的課堂時(shí)間理清思路、抓住基本核心技術(shù)、激發(fā)學(xué)習(xí)興趣,發(fā)揮課余時(shí)間、課程設(shè)計(jì)、畢業(yè)設(shè)計(jì)等大塊時(shí)間鞏固理論、鍛煉技能、學(xué)以致用、不斷提高的循序漸進(jìn)式教學(xué)模式是卓有成效的。
5 結(jié)語(yǔ)
嵌入式系統(tǒng)還沒(méi)有成熟的模式去遵循,教學(xué)之路很容易被五彩繽紛的嵌入式產(chǎn)品所迷惑,然而,課堂就是課堂,授之以漁的理念不能變,任何事物都在變化,但不乏規(guī)律存在,不乏瞬間的永恒,Intel的51體系結(jié)構(gòu)經(jīng)過(guò)了二十多年的風(fēng)雨洗禮后,仍然占有相當(dāng)大的市場(chǎng)份額就是一個(gè)例證,當(dāng)前風(fēng)靡的ARM體系結(jié)構(gòu)也必將擁有相當(dāng)長(zhǎng)的技術(shù)生命,課堂應(yīng)該抓住這些本質(zhì)的東西,用最短的時(shí)間做最有效的事情。當(dāng)然,應(yīng)用型本科院?!皩W(xué)以致用”的理念也不能變,嵌入式系統(tǒng)的教學(xué)必須合理利用相關(guān)的課堂時(shí)間、課余時(shí)間、課程設(shè)計(jì)、畢業(yè)設(shè)計(jì)等等教學(xué)環(huán)節(jié),堅(jiān)持“課程內(nèi)容滲透,課堂抓基礎(chǔ)、課后抓實(shí)踐”的教學(xué)路線,打造出企業(yè)所需的合格人才。
參考文獻(xiàn):
[1] 何立民.嵌入式系統(tǒng)的定義與發(fā)展歷史[M].北京: 北京航空航天大學(xué),2005.
[2] 畢春躍.計(jì)算機(jī)專(zhuān)業(yè)嵌入式系統(tǒng)教學(xué)模式探析[J].計(jì)算機(jī)教育,2008(4):82-84.
[3] 權(quán)寧一.單片機(jī)與嵌入式系統(tǒng)教學(xué)改革初探[J].福建電腦,2007(12):208-209.
[4] 俸皓.嵌入式系統(tǒng)教學(xué)體系改革的探討[J].科技信息,2007(30):288-289.
[5] 段鳳云.嵌入式系統(tǒng)實(shí)驗(yàn)教學(xué)的探討[J].單片機(jī)與嵌入式系統(tǒng)應(yīng)用,2006(5):72-73.
[6] 王田苗.嵌入式系統(tǒng)設(shè)計(jì)與實(shí)例開(kāi)發(fā)-基于ARM微處理器與uC/OS-Ⅱ?qū)崟r(shí)操作系統(tǒng)[M].北京:清華大學(xué)出版社,2008.
電腦知識(shí)與技術(shù)2009年15期