鄧小武?



摘 要:嵌入式系統(tǒng)作為智能技術(shù)的核心技術(shù),使嵌入式行業(yè)成為時下最熱門、最有發(fā)展前景的行業(yè),嵌入式研發(fā)工程師以突出的優(yōu)勢成為IT職場的緊缺人才。文中結(jié)合《嵌入式系統(tǒng)原理與接口技術(shù)》課程教學(xué)中存在的問題,以嵌入式行業(yè)崗位需求為導(dǎo)向,并以提升學(xué)生工程實踐能力為目的,對此類課程教學(xué)如何進行改革作了探索與實踐。
關(guān)鍵詞:嵌入式技術(shù);教學(xué)改革;工程實踐能力;教學(xué)模式
中圖分類號:TP39;G642 文獻標識碼:A 文章編號:2095-1302(2017)07-0-04
0 引 言
在嵌入式、移動互聯(lián)網(wǎng)、物聯(lián)網(wǎng)等熱門技術(shù)日益普及的今天,以實現(xiàn)智能化為核心目標的典型技術(shù)已成為整個信息產(chǎn)業(yè)毋庸置疑的主旋律。特別是近1年,以智能家居、智能醫(yī)療、可穿戴設(shè)備等為首的大量智能硬件批量進入到人們的生活,更讓這一場智能技術(shù)的變革成為勢不可擋的潮流。事實上,隨著產(chǎn)業(yè)的變革和發(fā)展,IT行業(yè)已被重新定義,從 Information Technology(信息技術(shù))領(lǐng)域發(fā)展為 Intelligent Technology(智能技術(shù))領(lǐng)域。嵌入式系統(tǒng)正是這些熱門產(chǎn)業(yè)應(yīng)用技術(shù)中最核心、最關(guān)鍵的部分,是推動這些產(chǎn)業(yè)快速發(fā)展的中堅力量。嵌入式行業(yè)更憑借其“應(yīng)用領(lǐng)域廣、人才需求大、就業(yè)薪資高、行業(yè)前景好”等眾多優(yōu)勢成為時下最熱門、最有發(fā)展前途的行業(yè)之一,與此同時,嵌入式研發(fā)工程師更是以突出優(yōu)勢成為IT職場的緊缺人才[1]。
針對市場對嵌入式人才的大量需求,國內(nèi)高等院校都設(shè)置了嵌入式方向、嵌入式專業(yè)(職業(yè)院校),并開設(shè)了嵌入式相關(guān)課程。雖然如此,但目前高校在嵌入式人才培養(yǎng)模式方面大多仍沿用傳統(tǒng)培養(yǎng)模式,使學(xué)生的工程能力與市場需求脫節(jié),無法滿足市場需求。基于對嵌入式多年的教學(xué)和科研體會,本文從培養(yǎng)學(xué)生工程能力角度以《嵌入式系統(tǒng)原理與接口技術(shù)》課程為例對嵌入式教學(xué)模式進行探討。
1 現(xiàn)階段嵌入式教學(xué)存在的問題
1.1 理論教學(xué)與實踐教學(xué)相分離問題
嵌入式系統(tǒng)是一個軟硬件相結(jié)合面向應(yīng)用的專用計算機系統(tǒng),具有很強的實踐性,只有通過不斷的實踐才能掌握其技術(shù)。國內(nèi)高校的嵌入式相關(guān)課程的教學(xué)計劃都設(shè)置了理論課時和實驗課時。理論教學(xué)在教室授課,而教師在授課時往往采用傳統(tǒng)的填鴨式教學(xué),沒有與學(xué)生互動、交流,不能掌握學(xué)生的學(xué)習(xí)和理解情況,而實踐教學(xué)通常在理論教學(xué)講完一個知識點或一個模塊后,過一段時間才進行實驗,甚至有的高校在上完理論課時后才進行實驗,這種做法本質(zhì)上會導(dǎo)致理論教學(xué)與實踐教學(xué)相分離,無法把理論知識融入到實踐教學(xué)中,更無法取得理想的教學(xué)效果。
1.2 教材問題
近年來,國內(nèi)出版社出版了許多有關(guān)嵌入式技術(shù)方面的教材和圖書,但難度較大,且多數(shù)教材以嵌入式系統(tǒng)層次結(jié)構(gòu)來組織相關(guān)章節(jié),以講解原理開始,從抽象的ARM體系結(jié)構(gòu)相關(guān)原理到ARM指令集及其匯編程序設(shè)計和驅(qū)動應(yīng)用層,內(nèi)容多來自開發(fā)手冊和數(shù)據(jù)手冊,內(nèi)容生硬,缺乏自己的經(jīng)驗、理解和相關(guān)的工程項目,導(dǎo)致課程缺乏實例和直觀性,使學(xué)生很難將抽象的知識和工程實踐結(jié)合起來并加以應(yīng)用,往往是當課程學(xué)完了學(xué)生卻不知道學(xué)到了什么[2]。
1.3 實踐教學(xué)問題
絕大多數(shù)高校都建立了嵌入式系統(tǒng)實驗室,購買供應(yīng)商的試驗箱或開發(fā)板,都配有相應(yīng)的實驗教程,但大部分都是驗證性實驗,缺乏實踐性強、提供源代碼、理論講解精煉清晰的實訓(xùn)項目。很多開發(fā)板提供商提供的開發(fā)板實驗手冊中講解完開發(fā)板硬件資源后就立即移植操作系統(tǒng)(移植Linux2.6內(nèi)核)。這也是使得很多人認為使用ARM就必須使用操作系統(tǒng)的關(guān)鍵所在,即使有部分實驗教程是講裸機開發(fā),也是在Linux環(huán)境下講解,這無形中給學(xué)生增加了入門難度,因為Linux環(huán)境下的Makefile編寫本身就有許多內(nèi)容要學(xué)習(xí)。在操作實驗時,學(xué)生不能將自己的想法融入實驗中,存在很大的局限性,實驗往往缺乏創(chuàng)新性和綜合性。
1.4 考核評價問題
考核評價學(xué)習(xí)成績和效果仍以筆試為主,對于具有實踐性強的嵌入式系統(tǒng)原理與接口技術(shù)來說,這種考核評價方式通常不能反映學(xué)生的真實情況,特別是學(xué)生的實踐動手能力。這種考核評價方式本末倒置,影響了學(xué)生學(xué)習(xí)這門課程的興趣。
2 課程教學(xué)改革措施
針對以上在嵌入式系統(tǒng)原理與接口技術(shù)中出現(xiàn)的各種問題,筆者結(jié)合自身的教學(xué)實踐做出了一些改進。
2.1 理論教學(xué)融入實踐教學(xué)
理論教學(xué)為實驗實踐環(huán)節(jié)提供了必要的知識基礎(chǔ),而實驗和實踐環(huán)節(jié)則在鞏固理論基礎(chǔ)的同時,能進一步提高實踐動手能力并創(chuàng)造潛能。如何把握和實現(xiàn)理論與實踐相結(jié)合?懷化學(xué)院計算機工程系為將理論教學(xué)融入實踐教學(xué),對《嵌入式系統(tǒng)原理與接口技術(shù)》整個課程只開設(shè)實驗課時,沒有設(shè)置理論課時。在教學(xué)實踐中對理論知識和基本原理進行取舍,將理論知識化整為零,歸結(jié)到各模塊中,在實驗中講授。模塊都以實例為基礎(chǔ),詳細講解了相應(yīng)模塊所需的基礎(chǔ)知識。恰當去掉對于初學(xué)者暫時不用或很少用到的知識點,盡量突出學(xué)習(xí)重點。
《嵌入式系統(tǒng)原理與接口技術(shù)》主要涉及基于非操作系統(tǒng)下的程序開發(fā),即裸機開發(fā),面對ARM指令集及匯編語言程序設(shè)計,學(xué)生往往無從下手,到底ARM匯編需要學(xué)到什么程度?為使問題簡單化,只取部分開發(fā)常用的ARM指令并結(jié)合具體實例進行講解,講解完后立即運用這部分指令進行實驗,達到理解和掌握該部分指令的目的。如果在開發(fā)過程中遇到其他問題時,可以查閱ARM指令集進行學(xué)習(xí),問題便會迎刃而解。GPIO組及控制寄存器見表1所列。
GPIO編程是最基本的技能,是控制其他硬件的基礎(chǔ),其核心部分是控制寄存器。PXA270具有119個通用I/O口,都由表1所示的寄存器控制,所以在學(xué)習(xí)GPIO模塊編程時,結(jié)合PXA270數(shù)據(jù)手冊對GPIO引腳功能和硬件結(jié)構(gòu)作簡要介紹。重點按表1對GPIO寄存器講解其分類和基本功能,使學(xué)生從整體上了解和把握GPIO的寄存器功能。再對本次實驗要用到的寄存器結(jié)合具體實驗程序進行講解,如何設(shè)置寄存器相應(yīng)的位,為什么要這樣設(shè)置。但并沒有對寄存器所有的位進行講解,對需要使用的位進行講解,以最大限度地將注意力集中在學(xué)習(xí)的重點上,即需要初始化哪些位,而不是剛接觸該寄存器就面對許多控制位(多達32位)。當熟悉了部分位的含義后,需要擴展其他功能時,便能很容易地找到其他控制位。理論部分講解完后,進行驗證型實驗,體驗實驗結(jié)果。
為了培養(yǎng)和提高學(xué)生的設(shè)計能力,對實驗進行擴展和設(shè)置新問題,要求學(xué)生實現(xiàn)其功能。例如做完UART通信實驗后,設(shè)置兩個設(shè)計性實驗:
(1) 將實驗參考程序的功能改為菜單選擇界面(使用UART_SendStr函數(shù)顯示菜單,調(diào)用UART_),GetKey函數(shù)等待用戶選擇,通過switch語句判斷用戶的選擇并執(zhí)行相應(yīng)操作。
(2)設(shè)計一個菜單選擇界面,控制發(fā)光二極管和蜂鳴器。通過以上練習(xí),既能達到理解和掌握相關(guān)基本理論知識的目的,把理論應(yīng)用到實踐,又能培養(yǎng)并提高學(xué)生的實踐能力和設(shè)計能力。
2.2 模塊化設(shè)計與系統(tǒng)設(shè)計相結(jié)合
整個嵌入式系統(tǒng)由各模塊構(gòu)成,要由淺入深地講解和實驗各個模塊,最后將部分模塊組成較大的系統(tǒng),使學(xué)生形象地看到模塊化開發(fā)的全貌和實現(xiàn)過程。筆者將《嵌入式系統(tǒng)原理與接口技術(shù)》劃分成如圖1所示模塊。
基礎(chǔ)模塊主要講解了ARM處理器的部分基礎(chǔ)知識、實驗平臺magicARM270、ADS1.2集成開發(fā)環(huán)境和GPIO模塊編程。提高模塊主要是對PXA270處理器硬件資源進行講解,并對每個模塊給出了一個具體的實現(xiàn)方法,理論聯(lián)系實踐,在實踐中更好地理解各個模塊的使用方法和使用過程中的注意事項。綜合模塊以基礎(chǔ)模塊和提高模塊為基礎(chǔ)進行設(shè)計和開發(fā),通過學(xué)習(xí)實踐進一步鞏固基本理論知識。例如串口控制實驗。通過串口發(fā)送命令,發(fā)送命令的格式和下位機收到命令后執(zhí)行的相關(guān)動作見表2所列。
該實驗?zāi)M了自動控制系統(tǒng)中上位機控制下位機的情形,即上位機發(fā)送命令,下位機接收到命令后,根據(jù)不同命令執(zhí)行相應(yīng)的動作(上位機控制下位機),這是一個綜合性實踐項目,可培養(yǎng)學(xué)生的綜合設(shè)計能力。
2.3 培養(yǎng)信息素養(yǎng)和英文資料閱讀能力
傳統(tǒng)的嵌入式教學(xué)忽視了對學(xué)生信息素養(yǎng)和英文資料閱讀能力的培養(yǎng)。信息素養(yǎng)(Information Literacy)是“利用大量信息工具及主要的信息源使問題得到解決的技術(shù)和技能”,簡單來說,信息素養(yǎng)包含了專業(yè)信息的搜索能力和分析利用能力,分析利用能力包括對信息的分析、加工、創(chuàng)新、利用、協(xié)作、交流[3]。隨著嵌入式技術(shù)的不斷發(fā)展,有關(guān)嵌入式技術(shù)的信息和資料非常多,應(yīng)學(xué)會使用百度和Google搜索技術(shù)資料,且嵌入式技術(shù)更新很快,作為一名優(yōu)秀的學(xué)生(開發(fā)人員),英語閱讀能力必不可少,因為很多技術(shù)資料,特別是一些新興的技術(shù)資料,往往都采用英語書寫,這就要求從事軟件行業(yè)的人員需要有一定的英語閱讀能力。同時必須具備較強的學(xué)習(xí)能力,善于通過各種渠道更新自身的知識體系,關(guān)注最新技術(shù)發(fā)展熱點,適應(yīng)行業(yè)最新發(fā)展需求。
magicARM270實驗箱自帶的實驗教程沒有LCD顯示控制實驗,以此為例講解信息檢索。通過信息檢索,利用網(wǎng)絡(luò)資源來解決學(xué)習(xí)工作中不斷遇到的技術(shù)問題。嵌入式技術(shù)比較好的網(wǎng)站見表3所列。
這些網(wǎng)站中都有論壇以供學(xué)生交流專業(yè)知識,論壇里的版主都非常熱心,基本上同學(xué)和老師的問題都有問必答,大家可以互相幫助,互相學(xué)習(xí),從一定程度上也鍛煉了同學(xué)們的團隊協(xié)作能力[4]。
當今我國計算機技術(shù)和其他一些領(lǐng)域的技術(shù)遠遠落后于西方發(fā)達國家,而且更新發(fā)展非???,為了跟蹤、了解和學(xué)習(xí)他國先進技術(shù),要求專業(yè)人員必須具備相關(guān)領(lǐng)域的專業(yè)英語閱讀能力。嵌入式系統(tǒng)開發(fā)人員通過Google搜索國外網(wǎng)站或借助其他手段得到的技術(shù)資料往往也是英文資料(英文開發(fā)手冊、開發(fā)文檔和數(shù)據(jù)手冊等)。筆者在嵌入式教學(xué)過程中發(fā)現(xiàn),雖然很多學(xué)生通過了大學(xué)英語四級、六級考試,但他們閱讀英文開發(fā)手冊和數(shù)據(jù)手冊仍存在一定困難,主要是缺乏專業(yè)的英文閱讀訓(xùn)練導(dǎo)致的。為培養(yǎng)學(xué)生的專業(yè)領(lǐng)域英文資料閱讀意識和能力,筆者在講解完某個模塊后,要求學(xué)生翻譯《Intel PXA27X Processor Family Developers Manual》中對應(yīng)的模塊,并且計入期末總成績。例如講完GPIO模塊后,把翻譯開發(fā)手冊《Section 23. General-Purpose I/O Controller》作為課外作業(yè)。
2.4 綜合考核方式
考慮到全面評價學(xué)生在一個學(xué)期的學(xué)習(xí)情況和實踐動手能力,同時綜合考核的內(nèi)容強調(diào)實驗的表現(xiàn)。期末綜合成績見表4所列。
通過這一考核評價方案,旨在培養(yǎng)學(xué)生專業(yè)英文閱讀和報告撰寫能力的同時,促使學(xué)生能夠?qū)⑺鶎W(xué)的基本理論知識運用到具體的實踐操作上。
期末的項目考試都制定了相應(yīng)的考核方案,包括考試方式、考試要求、考試內(nèi)容和評分細則。項目考試完成后,要按格式要求撰寫項目報告。制定的《嵌入式系統(tǒng)原理與接口技術(shù)》考核方案中的評分細則見表5所列。
2.5 參加相關(guān)競賽和科研立項,提升綜合能力
為積極倡導(dǎo)以學(xué)生為主體的研究性學(xué)習(xí)和創(chuàng)新性實驗教學(xué)改革,激發(fā)學(xué)生的創(chuàng)新思維和創(chuàng)新意識,提高學(xué)生的實踐能力與綜合能力。鼓勵學(xué)生積極參加 “博創(chuàng)杯”全國大學(xué)生嵌入式物聯(lián)網(wǎng)設(shè)計大賽、全國大學(xué)生“飛思卡爾杯”智能賽車競賽、全國大學(xué)生電子設(shè)計競賽等各種實踐活動,同時還鼓勵他們積極參加懷化學(xué)院和計算機工程系的“大學(xué)生研究性學(xué)習(xí)和創(chuàng)新性實驗計劃項目”。在整個過程中都有相應(yīng)的專業(yè)老師指導(dǎo),通過此方式不僅培養(yǎng)了學(xué)生的基本科研素養(yǎng),鍛煉了學(xué)生綜合科研能力和獨立分析、解決問題的能力,也為他們將來走向社會參加科研工作打下了堅實的基礎(chǔ)。通過競賽和科研項目的歷練不但讓學(xué)生提高了工程實踐能力,還讓他們逐漸形成了前沿的理念與創(chuàng)新意識,而這些也正是一位優(yōu)秀的嵌入式系統(tǒng)開發(fā)人才所應(yīng)具備的綜合能力素質(zhì)[5]。
3 結(jié) 語
嵌入式開發(fā)要求從業(yè)人員既要具備完整的理論知識結(jié)構(gòu),又要有很強的動手能力。這對高校嵌入式課程教學(xué)提出了更高的要求,需要積極探索嵌入式課程教學(xué)改革以適應(yīng)嵌入式行業(yè)對從業(yè)人員的要求。通過《嵌入式系統(tǒng)原理與接口技術(shù)》課程教學(xué)改革措施,有效提升了教學(xué)效率,提高了學(xué)生的學(xué)習(xí)興趣,鍛煉了學(xué)生積極動手的實踐能力,為培養(yǎng)適應(yīng)嵌入式行業(yè)的專業(yè)技術(shù)人才進行了有益的探索和實踐。
參考文獻
[1]華清遠見.2013-2014年(第六屆)中國嵌入式開發(fā)從業(yè)人員調(diào)查報告[EB/OL]. http://www.farsight.com.cn/subject/report2013-2014.htm.
[2]史梁,董麗莎.高職院校嵌入式系統(tǒng)與應(yīng)用專業(yè)教學(xué)改革模式探索與研究——以《嵌入式系統(tǒng)概論》課程為例[J].河南廣播電視大學(xué)學(xué)報,2014,2(27):100-102.
[3]段怡.論大學(xué)生信息素養(yǎng)教育的內(nèi)容構(gòu)成[J].高校圖書館工作,2004,24(3):76-79.
[4]豐海.嵌入式課程建設(shè)中的“有所為,有所不為”[J].江西理工大學(xué)學(xué)報,2011,32(6):72-74.
[5]李志軍,張子紅,王昊,等.以設(shè)計能力為主線的嵌入式系統(tǒng)教學(xué)改革[J].物聯(lián)網(wǎng)技術(shù),2014,4(10):86-87.
[6]吳新生.基于高職學(xué)生特點的《嵌入式操作系統(tǒng)》課程教學(xué)改革[J].物聯(lián)網(wǎng)技術(shù),2015,5(2):105-106.
[7]歐陽秀軍,劉啟岳,彭宣戈,等.嵌入式系統(tǒng)教學(xué)模式的研究與實踐[J].井岡山大學(xué)學(xué)報(自然科學(xué)版),2006,27(6):43-44.
[8]王俊波.物聯(lián)網(wǎng)專業(yè)應(yīng)用型人才培養(yǎng)研究與改革[J].物聯(lián)網(wǎng)技術(shù),2015,5(5):106-108.