朱建忠 賈云浪
摘? 要:在嵌入式技術(shù)快速發(fā)展的今天以及工程認(rèn)證的需要,嵌入式作為一門實(shí)踐性較強(qiáng)的課程,存在教學(xué)工作量大、知識(shí)點(diǎn)多、難以考核量化等問題,因而教學(xué)改革的實(shí)施勢在必行。該文從工程思維出發(fā),結(jié)合工程認(rèn)證的需要,在理論教學(xué)和實(shí)踐教學(xué)的開展過程中,提出一些教學(xué)改革措施,強(qiáng)化學(xué)生工程思維的能力,解決教學(xué)偏離實(shí)踐需要、實(shí)驗(yàn)教學(xué)不夠系統(tǒng)等問題。
關(guān)鍵詞:嵌入式系統(tǒng)? 工程思維? 工程認(rèn)證? 課程教學(xué)
中圖分類號(hào):G642? ? ? ? ? ? ? ? ? ? ? ? ? ? 文獻(xiàn)標(biāo)識(shí)碼:A文章編號(hào):1672-3791(2020)11(a)-0028-03
On the Teaching of Embedded System to Cultivate Students' Engineering Thinking Ability
ZHU Jianzhong? JIA Yunlang
(Nanjing Institute of Technology, Nanjing, Jiangsu Province, 210009? China)
Abstract: With the rapid development of embedded technology and the need for engineering certification, as a practical course, embedded system has many problems, such as heavy teaching workload, too many knowledge points, and difficult to assess and quantify. Therefore, the implementation of teaching reform is imperative. Starting from engineering thinking, combined with the needs of engineering certification, this paper puts forward some teaching reform measures in the process of theoretical teaching and practical teaching, so as to strengthen the students' ability of engineering thinking, and solve the problems such as teaching deviation from practical needs and insufficient experimental teaching system
Key Words: Embedded system; Engineering thinking; Engineering certification; Course teaching
嵌入式系統(tǒng)在工業(yè)生產(chǎn)的很多領(lǐng)域都有應(yīng)用,其滲透度非常高,如航空航天、通信電子、汽車電子、電氣工程、計(jì)算機(jī)科學(xué)等[1]。為了滿足社會(huì)需求,嵌入式系統(tǒng)的教學(xué)走進(jìn)了大學(xué)課堂,并得到快速發(fā)展。一般而言,嵌入式系統(tǒng)的課程教學(xué),是從傳統(tǒng)的單片機(jī)和微機(jī)原理等相關(guān)學(xué)科發(fā)展演變而來,涉及到硬件、軟件等科目的學(xué)習(xí)和實(shí)踐。在教學(xué)開展過程中,學(xué)生應(yīng)具備一定的C語言編程能力、硬件電路設(shè)計(jì)和分析能力、硬件調(diào)試能力、程序調(diào)試能力,因而,給學(xué)生在短時(shí)間內(nèi)掌握嵌入式系統(tǒng)的精髓設(shè)置了很高的門檻[2]。
1? 課程教學(xué)現(xiàn)狀
在教學(xué)初期,嵌入式的教學(xué)還是沿用單片機(jī)和接口技術(shù)的教學(xué)理念,將已有的教學(xué)思維和方法作用于嵌入式系統(tǒng)中,簡單地堆疊和搬運(yùn),帶來了很多問題[3]。
1.1 知識(shí)點(diǎn)多,課時(shí)不足
在硬件嵌入式系統(tǒng)的硬件教學(xué)過程中,相關(guān)知識(shí)點(diǎn)有中斷、定時(shí)器、總線、串口、GPIO、電源、元器件功能等。而程序軟件學(xué)習(xí)過程,相關(guān)知識(shí)點(diǎn)有寄存器、驅(qū)動(dòng)編寫、操作系統(tǒng)等。就某個(gè)知識(shí)點(diǎn)的教學(xué),動(dòng)輒2學(xué)時(shí),多則10多學(xué)時(shí),而對(duì)于嵌入式系統(tǒng),最大學(xué)時(shí)一般不超過64學(xué)時(shí),如何將有限的課堂教學(xué)作用于如此多的知識(shí)點(diǎn),是這門課在教學(xué)過程中面對(duì)的難點(diǎn)。
1.2 理論教學(xué)飽滿,實(shí)踐教學(xué)欠缺
當(dāng)僅有的64學(xué)時(shí)被分割成兩個(gè)部分,而理論教學(xué)的知識(shí)點(diǎn)繁多,使得理論教學(xué)會(huì)擠壓實(shí)踐教學(xué)的時(shí)間,實(shí)踐課程時(shí)間不能保證會(huì)直接影響到教學(xué)效果,以及教學(xué)目標(biāo)的達(dá)成。
1.3 實(shí)驗(yàn)針對(duì)性強(qiáng),系統(tǒng)性不夠
針對(duì)相關(guān)知識(shí)點(diǎn),雖有實(shí)驗(yàn)輔助教學(xué)滲入,但實(shí)驗(yàn)的設(shè)計(jì)過于陳舊,知識(shí)點(diǎn)的針對(duì)性驗(yàn)證越強(qiáng),帶來思維的束縛就越明顯。比如,GPIO的功能非常強(qiáng)大,可以用于除模擬功能的所有數(shù)字輸入輸出功能,即,當(dāng)某一功能因引腳分配或功能復(fù)用沖突而致無法采用對(duì)應(yīng)引腳實(shí)現(xiàn),可采用任一GPIO引腳模擬實(shí)現(xiàn),這樣給設(shè)計(jì)帶來更多柔性空間。不僅如此,通過GPIO的模擬引腳功能可以促進(jìn)學(xué)生對(duì)知識(shí)點(diǎn)底層思維方式的理解。
1.4 難以達(dá)成工程質(zhì)量體系評(píng)價(jià)指標(biāo)
工程教育認(rèn)證的背景,要求學(xué)生具備針對(duì)復(fù)雜工程問題設(shè)計(jì)解決方案的能力,并且要求創(chuàng)新意識(shí)在設(shè)計(jì)環(huán)節(jié)中有所體現(xiàn)[4]。因而,對(duì)教學(xué)過程中相關(guān)環(huán)節(jié)設(shè)計(jì)能夠體現(xiàn)教學(xué)質(zhì)量的目標(biāo)并加權(quán)組合成目標(biāo)函數(shù),對(duì)指導(dǎo)理論教學(xué)和實(shí)驗(yàn)教學(xué)尤為重要。而目前的教學(xué)安排,對(duì)形成具有目標(biāo)考核的指標(biāo)有一定難度,主要是由于知識(shí)點(diǎn)的瑣碎,導(dǎo)致具有工程實(shí)踐價(jià)值的教學(xué)環(huán)節(jié)很難形成。
2? 課程改革
以南京工程學(xué)院電氣工程專業(yè)為例,面向大三年級(jí)開設(shè)了《嵌入式系統(tǒng)》課程,將之前的《單片機(jī)原理》以及《微機(jī)接口技術(shù)》課程的教學(xué)內(nèi)容融合后并入到嵌入式系統(tǒng)中。并且在C語言教學(xué)中,強(qiáng)調(diào)實(shí)踐環(huán)節(jié)的安排。由于之前的C語言學(xué)習(xí),教學(xué)動(dòng)機(jī)主要是完成學(xué)生的計(jì)算機(jī)二級(jí)考試,有一定的應(yīng)試教學(xué)成分,導(dǎo)致學(xué)生以做題形式完成課程教學(xué),出現(xiàn)會(huì)做題,但不能編程,而且認(rèn)為C語言學(xué)習(xí)是闖關(guān)訓(xùn)練,完成考級(jí)目標(biāo)就萬事大吉。為了強(qiáng)化嵌入式系統(tǒng)的教學(xué),該課題組以最終實(shí)現(xiàn)工程實(shí)踐能力的培養(yǎng)為目標(biāo)將以上課程重新編排,并形成如圖1所示的教學(xué)流程。
圖1中,將相關(guān)課程有機(jī)融合并形成有機(jī)整體,從而為嵌入式系統(tǒng)學(xué)習(xí)搭建有力的平臺(tái)。課程組根據(jù)單片機(jī)原理的教學(xué)經(jīng)驗(yàn)中提煉出用于C語言教學(xué)的相關(guān)邏輯編程內(nèi)容,如引腳讀寫涉及的相關(guān)移位、與或非操作。為了便于說明,該文給出一段引腳讀寫的例程。
2.1 引腳讀寫的C語言邏輯編程
(1)首先通過宏定義的方式定義引腳的基地址。
#define PERIPH_BASE? ? ? ((unsigned int)0x40000000)
#define APB2PERIPH_BASE? (PERIPH_BASE + 0x00010000)
#define GPIOC_BASE? ? ? ?(APB2PERIPH_BASE + 0x1000)
#define GPIOC_CRL? *(unsigned int*)(GPIOC_BASE+0x00)
#define GPIOC_CRH? *(unsigned int*)(GPIOC_BASE+0x04)
#define GPIOC_BSRR? *(unsigned int*)(GPIOC_BASE+0x10)
從地址的定義出發(fā),讓學(xué)生掌握宏定義的學(xué)習(xí),并深入理解宏定義的應(yīng)用場景。同時(shí)指明,在定義時(shí)要區(qū)分大小寫,培養(yǎng)學(xué)生良好的編程習(xí)慣。在定義該地址時(shí),還牽扯到指針的概念,這在之前的C語言學(xué)習(xí)中,對(duì)于學(xué)生是一個(gè)莫大的難點(diǎn)。
(2)引腳控制程序。
void main(void)
{GPIOC_CRL &= ~( 0x0F<< (4*0));
GPIOC_CRL |= (3<<4*0);
GPIOC_BSRR=(1<<(16+0));
while(1);}
由主函數(shù)main完成引腳的操作,子函數(shù)完成相應(yīng)的延時(shí)。主函數(shù)中實(shí)現(xiàn)了子函數(shù)的調(diào)用,這在以往的C語言教學(xué)中容易被忽視,學(xué)生很少接觸到函數(shù)調(diào)用的訓(xùn)練。在主函數(shù)中,存在大量的移位和邏輯操作,并將其與引腳對(duì)應(yīng),實(shí)現(xiàn)了從程序到硬件的控制流程。
簡單的一段代碼將多個(gè)C語言知識(shí)點(diǎn)融合并完成一個(gè)完整的訓(xùn)練,從而避免在C語言教學(xué)中出現(xiàn)過于瑣碎的知識(shí)點(diǎn)講解,帶來枯燥無味的學(xué)習(xí)過程。
2.2 工程項(xiàng)目化教學(xué)的細(xì)化
圖1中,不僅涉及到從單片機(jī)原理到C語言的流程,還有因接口電路設(shè)計(jì)需要而帶來的驅(qū)動(dòng)程序編寫,以及在嵌入式系統(tǒng)學(xué)習(xí)中包含的大量硬件原理設(shè)計(jì)(包含主芯片的內(nèi)核功能和外圍電路)。最終,將硬件通過C語言程序進(jìn)行有序連接,此時(shí)設(shè)計(jì)到的C語言具備結(jié)構(gòu)化特征,項(xiàng)目工程文件的組織和管理,函數(shù)間的調(diào)用也變得異常復(fù)雜。
項(xiàng)目化教學(xué)的難點(diǎn)就是功能的細(xì)分,這不僅關(guān)系到教學(xué)的有序開展,而且還影響到教學(xué)目標(biāo)評(píng)測的合理性。為了充分體現(xiàn)工程教育認(rèn)證的實(shí)質(zhì)需求,該課程組將嵌入式系統(tǒng)的實(shí)踐環(huán)節(jié)進(jìn)行細(xì)化,從項(xiàng)目框架出發(fā),涉及到器件選型、硬件原理圖設(shè)計(jì)、PCB設(shè)計(jì)、焊接、功能測試和一系列修改流程。細(xì)化后的各環(huán)節(jié)可以作為項(xiàng)目評(píng)測點(diǎn),對(duì)其進(jìn)行打分,然后加權(quán)后得到總分。
規(guī)范化教學(xué)以及形成標(biāo)準(zhǔn)化的教學(xué)過程是工程教育認(rèn)證體系的核心思想。因而教學(xué)環(huán)節(jié)的設(shè)計(jì)中要體現(xiàn)標(biāo)準(zhǔn)化內(nèi)涵,如框圖語言要規(guī)范,能夠用相關(guān)軟件合理設(shè)計(jì)和表達(dá);程序設(shè)計(jì)也要合規(guī),特別是對(duì)于簡單的變量名和函數(shù)名定義也要標(biāo)準(zhǔn)化,可以采用微軟的命名方式;硬件原理圖設(shè)計(jì)要按功能進(jìn)行分割及布局。標(biāo)準(zhǔn)化的設(shè)計(jì)也便于教學(xué)目標(biāo)評(píng)測。
3? 結(jié)語
該文針對(duì)嵌入式系統(tǒng)教學(xué)過程中出現(xiàn)的內(nèi)容瑣碎、知識(shí)點(diǎn)較多、難以工程教學(xué)目標(biāo)評(píng)測等問題,給出了符合項(xiàng)目化教學(xué)需要以及教學(xué)目標(biāo)評(píng)測的改革思路,將多門課的教學(xué)過程融為一體,以實(shí)踐教學(xué)為中心有序有力地開展教、學(xué)、評(píng)、測等活動(dòng)。
參考文獻(xiàn)
[1] 胡應(yīng)坤,林杰鑫,徐開濤.嵌入式技術(shù)應(yīng)用教學(xué)改革研究[J].教育現(xiàn)代化,2019(83):109-111.
[2] 孫青,李輝勇.面向?qū)W生工程能力培養(yǎng)的嵌入式系統(tǒng)設(shè)計(jì)實(shí)訓(xùn)課程教學(xué)改革實(shí)踐[J].計(jì)算機(jī)教育,2020(3):136-140.
[3] 劉光偉.淺析STM32嵌入式實(shí)驗(yàn)教學(xué)的改革與實(shí)踐[J].科技資訊,2019(35):159-160.
[4] 王超,張偉,侯凌燕.面向?qū)I(yè)工程認(rèn)證的嵌入式CPS方法課程改革實(shí)踐[J].教育教學(xué)論壇,2019(34):93-94.
[5] 居發(fā)禮,余曉平,劉麗瑩.基于工程思維能力培養(yǎng)的課程教學(xué)探討[J].山西建筑,2018,44(17):233-234.
[6] 謝捷如.面向工程思維培養(yǎng)的“電路”課程教學(xué)研究與探討[J].機(jī)械設(shè)計(jì)與制造工程,2018,47(12):118-120.