王威
摘要:嵌入式系統(tǒng)開(kāi)發(fā)是一門軟硬件相互結(jié)合的綜合課程。筆者分析了嵌入式系統(tǒng)開(kāi)發(fā)課程的特點(diǎn)及現(xiàn)狀,針對(duì)目前教學(xué)中存在的問(wèn)題,結(jié)合計(jì)算機(jī)技術(shù)系學(xué)生特色與NEWLab實(shí)訓(xùn)設(shè)備,從課程內(nèi)容、教學(xué)方法、實(shí)驗(yàn)教學(xué)等方面進(jìn)行了一系列教學(xué)研究及改進(jìn)。經(jīng)過(guò)教學(xué)實(shí)踐證明,該文教學(xué)法能有效解決之前存在的問(wèn)題,更好地達(dá)成課程目標(biāo)。
關(guān)鍵詞:嵌入式系統(tǒng)開(kāi)發(fā);物聯(lián)網(wǎng);教學(xué)方法
中圖分類號(hào):TP311? ? ? 文獻(xiàn)標(biāo)識(shí)碼:A? ? ? 文章編號(hào):1009-3044(2018)34-0104-02
嵌入式系統(tǒng)是一種專用計(jì)算機(jī)系統(tǒng),嵌入到裝置或設(shè)備中。嵌入式系統(tǒng)的功能、成本、開(kāi)發(fā)效率等條件決定了嵌入式設(shè)備的選材多樣化,軟件、硬件可裁剪[1]。隨著近年物聯(lián)網(wǎng)新一代信息技術(shù)發(fā)展,作為物聯(lián)網(wǎng)重要組成部分的嵌入式系統(tǒng)技術(shù)人才需求大增,有這廣闊的應(yīng)用和就業(yè)前景。
嵌入式系統(tǒng)是系統(tǒng)的應(yīng)用軟件與系統(tǒng)的硬件一體化,類似BIOS工作方式,應(yīng)用范圍很廣。因此,嵌入式系統(tǒng)開(kāi)發(fā)課程教學(xué)內(nèi)容設(shè)置廣泛,軟件部分包括匯編語(yǔ)言、C語(yǔ)言以及嵌入式Linux操作系統(tǒng)相關(guān)知識(shí),硬件部分涉及計(jì)算機(jī)原理、基礎(chǔ)硬件電路、接口協(xié)議等技術(shù),在綜合知識(shí)和計(jì)算機(jī)編程能力上有較高要求[2]。
1 嵌入式系統(tǒng)開(kāi)發(fā)課程特點(diǎn)
1.1 綜合性強(qiáng)
嵌入式系統(tǒng)開(kāi)發(fā)課程對(duì)知識(shí)的綜合性有較高要求。要求學(xué)生掌握計(jì)算機(jī)相關(guān)基礎(chǔ)知識(shí),以及硬件結(jié)構(gòu)和軟件編程。硬件有ARM結(jié)構(gòu)、電路原理、串口協(xié)議;軟件有ARM指令、匯編、C語(yǔ)言、嵌入式Linux操作系統(tǒng)軟件開(kāi)發(fā)。嵌入式系統(tǒng)開(kāi)發(fā)課程,要求學(xué)生了解嵌入式Linux系統(tǒng)的移植和基礎(chǔ)設(shè)備驅(qū)動(dòng)開(kāi)發(fā),熟悉硬件體系結(jié)構(gòu)和基礎(chǔ)ARM硬件開(kāi)發(fā),掌握嵌入式系統(tǒng)開(kāi)發(fā)環(huán)境的搭建,讓學(xué)生能夠獨(dú)立開(kāi)發(fā)一個(gè)小型完整的嵌入式系統(tǒng)。
1.2 實(shí)踐性強(qiáng)
課程的實(shí)踐性很強(qiáng)。課程設(shè)計(jì)上實(shí)訓(xùn)環(huán)節(jié)占了大部分時(shí)間,重要程度不言而喻。在實(shí)訓(xùn)過(guò)程中,學(xué)生對(duì)基礎(chǔ)理論知識(shí)有了更強(qiáng)的理解,學(xué)生的學(xué)習(xí)興趣得到提高,學(xué)生的動(dòng)手能力得到培養(yǎng)。通過(guò)實(shí)訓(xùn),學(xué)生能熟悉嵌入式系統(tǒng)完整的開(kāi)發(fā)流程,并在實(shí)例中掌握軟硬件開(kāi)發(fā)方法。
2 嵌入式系統(tǒng)開(kāi)發(fā)課程教學(xué)內(nèi)容改革
2.1 教學(xué)內(nèi)容設(shè)置
江西信息應(yīng)用職業(yè)技術(shù)學(xué)院計(jì)算機(jī)技術(shù)系旨在培養(yǎng)計(jì)算機(jī)應(yīng)用技術(shù)領(lǐng)域緊缺人才,在嵌入式課程體系設(shè)置上,規(guī)劃了《單片機(jī)技術(shù)》和《嵌入式系統(tǒng)開(kāi)發(fā)》兩門課程。專科第二學(xué)期開(kāi)設(shè)《單片機(jī)技術(shù)》課程,介紹了51單片機(jī)工作原理及相關(guān)應(yīng)用技術(shù)。在第四學(xué)期開(kāi)設(shè)《嵌入式系統(tǒng)開(kāi)發(fā)》課程,使用NEWLab嵌入式ARM開(kāi)發(fā)板,作為嵌入式系統(tǒng)開(kāi)發(fā)的實(shí)訓(xùn)平臺(tái)。51單片機(jī)由來(lái)已久且學(xué)習(xí)難度不高,在C語(yǔ)言程序設(shè)計(jì)與嵌入式系統(tǒng)開(kāi)發(fā)中有一種承上啟下的作用,從而為嵌入式系統(tǒng)開(kāi)發(fā)課程的學(xué)習(xí)打好了基礎(chǔ)。
在教材的選擇上,由于NEWLab嵌入式ARM開(kāi)發(fā)板采用市場(chǎng)上較新的S3C2451芯片,而市面上還沒(méi)有關(guān)于S3C2451芯片開(kāi)發(fā)的教材,故選用相近的S3C2440芯片的教材。系里采用韋東山編著的《嵌入式Linux應(yīng)用開(kāi)發(fā)完全手冊(cè)》作為教材。
2.2 物聯(lián)網(wǎng)專業(yè)嵌入式教學(xué)內(nèi)容側(cè)重點(diǎn)
嵌入式系統(tǒng)開(kāi)發(fā)可分為硬件開(kāi)發(fā)和軟件開(kāi)發(fā)兩個(gè)方向,而軟件開(kāi)發(fā)又可細(xì)分為系統(tǒng)級(jí)軟件開(kāi)發(fā)和應(yīng)用軟件開(kāi)發(fā)兩個(gè)子方向。硬件開(kāi)發(fā)包括ARM、存儲(chǔ)(如flash)、I/O(I/O控制電路、顯示模塊、通訊模塊等),系統(tǒng)級(jí)軟件開(kāi)發(fā)包括Linux操作系統(tǒng)內(nèi)核、I/O軟件以及設(shè)備驅(qū)動(dòng)開(kāi)發(fā),應(yīng)用軟件開(kāi)發(fā)包括基于Linux的應(yīng)用開(kāi)發(fā)。考慮到物聯(lián)網(wǎng)技術(shù)專業(yè)學(xué)生特長(zhǎng)和發(fā)展方向,目標(biāo)培養(yǎng)更偏向于嵌入式Linux系統(tǒng)軟件的開(kāi)發(fā),在授課計(jì)劃安排上以軟件為主,兼顧學(xué)習(xí)硬件基礎(chǔ)知識(shí)。主要學(xué)習(xí)匯編語(yǔ)言、C語(yǔ)言程序設(shè)計(jì)、Linux命令、側(cè)重于編程應(yīng)用。
3 課堂教學(xué)方法改革
3.1 講授法與討論法相結(jié)合
在教學(xué)中,講授法是最基本的教學(xué)方法,但要充分調(diào)動(dòng)學(xué)生的學(xué)習(xí)積極性,還需與討論法相結(jié)合。教師在講授了基本知識(shí)后拋出適當(dāng)?shù)膯?wèn)題,學(xué)生以小組為單元,在教師的指導(dǎo)下對(duì)問(wèn)題進(jìn)行分析和探討,并通過(guò)討論活動(dòng)獲得知識(shí)。有點(diǎn)在于,培養(yǎng)合作精神,激發(fā)學(xué)生的學(xué)習(xí)興趣,提高學(xué)生學(xué)習(xí)的獨(dú)立性。
3.2 項(xiàng)目驅(qū)動(dòng)式教學(xué)方法
江西信息應(yīng)用職業(yè)技術(shù)學(xué)院是一所應(yīng)用型高職院校,主要是以應(yīng)用型人才培養(yǎng)為目標(biāo),因此在嵌入式系統(tǒng)開(kāi)發(fā)課程中使用項(xiàng)目驅(qū)動(dòng)式教學(xué)方法[3]。講授實(shí)訓(xùn)開(kāi)發(fā)內(nèi)容時(shí),以項(xiàng)目為任務(wù)中心,在強(qiáng)烈的問(wèn)題動(dòng)機(jī)驅(qū)動(dòng)下,通過(guò)對(duì)學(xué)習(xí)資源的積極主動(dòng)應(yīng)用,進(jìn)行自主探索和互動(dòng)協(xié)作的學(xué)習(xí),并在完成既定任務(wù)的同時(shí),引導(dǎo)學(xué)生產(chǎn)生一種學(xué)習(xí)實(shí)踐活動(dòng)。專業(yè)教師應(yīng)積極鼓勵(lì)學(xué)生參加專業(yè)相關(guān)的職業(yè)技能競(jìng)賽活動(dòng),例如物聯(lián)網(wǎng)比賽、互聯(lián)網(wǎng)+比賽,創(chuàng)新創(chuàng)業(yè)比賽等,在比賽中指導(dǎo)學(xué)生,讓學(xué)生在比賽中進(jìn)一步加深知識(shí)的應(yīng)用。
4 實(shí)驗(yàn)教學(xué)改革
實(shí)驗(yàn)教學(xué)是嵌入式系統(tǒng)開(kāi)發(fā)課程教學(xué)的一個(gè)重要環(huán)節(jié),其優(yōu)劣關(guān)系到學(xué)生對(duì)于這門課的掌握。通過(guò)實(shí)驗(yàn),可以幫助學(xué)生加深對(duì)理論知識(shí)的理解,更著重培養(yǎng)學(xué)生正確使用儀器設(shè)備,進(jìn)行測(cè)試、分析、綜合思考和編寫實(shí)驗(yàn)報(bào)告的能力。
4.1 實(shí)驗(yàn)課程的內(nèi)容安排
實(shí)驗(yàn)設(shè)備采用北京新大陸時(shí)代教育科技有限公司的嵌入式教學(xué)平臺(tái)NEWLab,其ARM核心模塊采用S3C2451作為CPU,配有64MB的SDRAM,1GB nand flash。外部接口豐富,包含USB、miniUSB、RJ45通信接口,JTAG調(diào)試接口,液晶屏、觸摸屏、鍵盤接口,并將SDIO,SPI,I2C,UART,SD/TF等接口引出,方便與外部模塊進(jìn)行連接。
實(shí)驗(yàn)課內(nèi)容從容易到難,從單個(gè)硬件的使用到多個(gè)硬件的綜合控制。開(kāi)始是用GPIO端口控制LED顯示的例子程序,在這個(gè)例程中需完成工程的新建、匯編程序的編寫、C語(yǔ)言程序的編寫、燒寫程序并調(diào)試,最后是觀看實(shí)驗(yàn)結(jié)果。在這個(gè)實(shí)驗(yàn)中,學(xué)生初步掌握嵌入式linux系統(tǒng)中arm-linux-gcc開(kāi)發(fā)工具的使用以及程序燒寫的一般步驟,還對(duì)基本的ARM內(nèi)GPIO端口有了初步的認(rèn)識(shí)。后續(xù)開(kāi)設(shè)的實(shí)驗(yàn)項(xiàng)目包括UART串口打印實(shí)驗(yàn)、中斷控制實(shí)驗(yàn)、RTC實(shí)時(shí)時(shí)鐘實(shí)驗(yàn)等,這些實(shí)驗(yàn)都會(huì)用GPIO。實(shí)驗(yàn)過(guò)程中,注意激發(fā)學(xué)生的學(xué)習(xí)熱情和動(dòng)手實(shí)驗(yàn)的興趣。鼓勵(lì)學(xué)生采用不同的C語(yǔ)言算法實(shí)現(xiàn)同一個(gè)實(shí)驗(yàn)的功能,提高學(xué)生的編程能力,達(dá)到舉一反三的作用。
4.2 實(shí)驗(yàn)教學(xué)環(huán)節(jié)改革
對(duì)實(shí)驗(yàn)教學(xué)環(huán)節(jié)設(shè)計(jì)進(jìn)行改革,從以往的“驗(yàn)證性為主”逐步變?yōu)椤膀?yàn)證性為輔,自己動(dòng)手創(chuàng)新為主”的實(shí)驗(yàn)課程教學(xué)設(shè)計(jì)模式。
在GPIO端口控制LED顯示等實(shí)驗(yàn)中,首先教學(xué)生用匯編語(yǔ)言點(diǎn)亮一個(gè)LED燈,在學(xué)生都能掌握匯編語(yǔ)言程序編寫和燒寫調(diào)試后,對(duì)C語(yǔ)言指針等基礎(chǔ)知識(shí)進(jìn)行復(fù)習(xí),引導(dǎo)學(xué)生用C語(yǔ)言程序來(lái)點(diǎn)亮LED燈。這樣,不僅加強(qiáng)了學(xué)生對(duì)C語(yǔ)言的掌握,還進(jìn)行了驗(yàn)證性實(shí)驗(yàn)。接下來(lái)對(duì)學(xué)生開(kāi)展創(chuàng)新型實(shí)驗(yàn),將每個(gè)班的學(xué)生分成10組,實(shí)驗(yàn)以小組為單位進(jìn)行,每組采用不同算法實(shí)現(xiàn)LED跑馬燈或流水燈等亮化效果,實(shí)驗(yàn)完成后各小組展示自己的實(shí)驗(yàn)成果,最后由亮化美觀效果進(jìn)行評(píng)分。實(shí)驗(yàn)結(jié)果表明,通過(guò)分組展示的競(jìng)爭(zhēng)激勵(lì)機(jī)制,調(diào)動(dòng)了學(xué)生的積極性,充分發(fā)揮了學(xué)生的創(chuàng)新能力。
5 結(jié)束語(yǔ)
通過(guò)以上一系列課程教學(xué)改革,有效地調(diào)動(dòng)了學(xué)生學(xué)習(xí)的主觀能動(dòng)性,提高了學(xué)生分析解決問(wèn)題的能力,取得了良好的教學(xué)效果。
參考文獻(xiàn):
[1] 張立新. 計(jì)算機(jī)嵌入式系統(tǒng)核心技術(shù)的開(kāi)發(fā)探討[J]. 無(wú)線互聯(lián)科技, 2017(21): 80-81.
[2] 朱銘琳. 嵌入式系統(tǒng)開(kāi)發(fā)課程教學(xué)改革[J]. 信息與電腦: 理論版, 2017(19): 231-233.
[3] 湯龍梅, 王璇, 郭方. 嵌入式系統(tǒng)開(kāi)發(fā)實(shí)例課程教學(xué)方法探索[J]. 福建電腦, 2017, 33(5): 67-68, 92.
【通聯(lián)編輯:謝媛媛】