王穎 周鉑焱
(江蘇航空職業(yè)技術(shù)學(xué)院,江蘇鎮(zhèn)江 212000)
“單片機(jī)應(yīng)用技術(shù)”是高職電子類相關(guān)專業(yè)的專業(yè)核心課程,具有很強(qiáng)的綜合性、實(shí)踐性[1]。該課程重在培養(yǎng)高職學(xué)生對(duì)單片機(jī)控制的電子產(chǎn)品的開發(fā)、調(diào)試與功能指標(biāo)測(cè)試,以及故障分析與維修的能力。但傳統(tǒng)的單片機(jī)教學(xué)方法普遍采用理論講授式,這種方法容易使教學(xué)目標(biāo)與培養(yǎng)目標(biāo)脫節(jié),既不利于教師教學(xué)、也不利于學(xué)生對(duì)于技能的學(xué)習(xí)掌握。本文以C51單片機(jī)為例,嘗試運(yùn)用任務(wù)驅(qū)動(dòng)法,將單片機(jī)理論與實(shí)踐相結(jié)合進(jìn)行教學(xué),旨在培養(yǎng)學(xué)生的應(yīng)用能力和實(shí)操能力,為企業(yè)培養(yǎng)高技能型人才。
I/O端口是單片機(jī)與外界的接口,“并行I/O端口”是單片機(jī)學(xué)習(xí)的基礎(chǔ)內(nèi)容。傳統(tǒng)的授課方式是給出并行I/O端口的結(jié)構(gòu)和功能,依次介紹P0、P1、P2、P3端口的使用規(guī)則,以及C51的程序結(jié)構(gòu)、特點(diǎn)及基本語句。這種教學(xué)方法使學(xué)生被動(dòng)地接受知識(shí),填鴨式灌輸不易激發(fā)學(xué)生的學(xué)習(xí)興趣。而采用任務(wù)驅(qū)動(dòng)法,學(xué)生在任務(wù)的驅(qū)動(dòng)下變被動(dòng)為主動(dòng),在完成任務(wù)的同時(shí)提升了利用理論知識(shí)分析問題和解決問題的能力,獲得了學(xué)習(xí)的成就感。
從教學(xué)內(nèi)容看,“并行I/O端口”是對(duì)前面所學(xué)的單片機(jī)軟、硬件、C語言基礎(chǔ)的綜合運(yùn)用,此時(shí)學(xué)生已經(jīng)掌握了基本的理論基礎(chǔ),具備了分析單片機(jī)并行接口的能力,這為任務(wù)的完成提供了足夠知識(shí)儲(chǔ)備。
51單片機(jī)有4個(gè)8位并行I/O接口,每個(gè)都可以任意編程為輸入或輸出[2],這4個(gè)口是單片機(jī)與外界溝通的通道,要掌握單片機(jī)的應(yīng)用,首先要懂這些I/O接口的功能和使用方法。
本節(jié)課在教學(xué)過程中,教師先以“8位LED燈閃爍的控制”任務(wù)進(jìn)行示范,讓學(xué)生邊學(xué)邊練,通過跟學(xué)了解單片機(jī)并行I/O端口及其應(yīng)用。該過程針對(duì)教學(xué)目標(biāo)設(shè)定任務(wù),將所要教授的概念、技能蘊(yùn)含在要解決的任務(wù)之中,通過任務(wù)的解決,使學(xué)生獲得相應(yīng)的知識(shí)和技能。
通過上述項(xiàng)目引入,學(xué)生掌握了基本的知識(shí)和技能。此時(shí),設(shè)定課堂任務(wù),并將學(xué)生按能力進(jìn)行分組,完成任務(wù)實(shí)踐。
為了激發(fā)學(xué)生的實(shí)踐興趣,設(shè)定貼近生活實(shí)際的“模擬汽車轉(zhuǎn)向燈的控制”任務(wù)。但該任務(wù)相對(duì)老師示范的任務(wù)更為復(fù)雜,需要同時(shí)用到多個(gè)端口及同一個(gè)端口的多個(gè)引腳,乍一看學(xué)生會(huì)覺得難度大,沒有頭緒。此時(shí),教師需要引導(dǎo)學(xué)生進(jìn)行任務(wù)分析:是否可以將汽車轉(zhuǎn)向燈的控制這一實(shí)際問題抽象、簡(jiǎn)化為若干個(gè)狀態(tài)的物理模型,理清狀態(tài)表,設(shè)計(jì)難度就大大降低了,表1為學(xué)生分組討論得出的汽車轉(zhuǎn)向燈狀態(tài)表。
表1 汽車轉(zhuǎn)向燈狀態(tài)表Tab.1 State table of automobile turn signal
有了狀態(tài)表,教師可引導(dǎo)學(xué)生進(jìn)一步自主分析,與先導(dǎo)任務(wù)“8位LED燈閃爍的控制”相比有什么異同點(diǎn),應(yīng)該怎么樣分析設(shè)計(jì)?
學(xué)生分組討論后得出本任務(wù)需要使用單片機(jī)的兩個(gè)2個(gè)并行I/O,可采用兩個(gè)LED燈LED1、LED2分別模擬汽車左、右轉(zhuǎn)向燈,由P1端口的兩個(gè)引腳(如P1.0和P1.1)的輸出控制兩個(gè)LED燈的亮、滅狀態(tài);用兩個(gè)分別連接到P2端口P2.0和P2.1引腳的開關(guān)S1、S2分別模擬左轉(zhuǎn)、右轉(zhuǎn)控制開關(guān)。則可設(shè)計(jì)出原理圖,圖1,即模擬汽車轉(zhuǎn)向燈的控制原理圖。
圖1 模擬汽車轉(zhuǎn)向燈的控制原理圖Fig.1 Control schematic diagram of simulated automobile turn signal
啟發(fā)學(xué)生進(jìn)一步思考引腳輸入輸出與狀態(tài)控制之間的關(guān)系。根據(jù)原理圖分析可得,P1.0和P1.1分別控制LED1、LED2兩個(gè)發(fā)光二極管,當(dāng)引腳輸出為0時(shí),相應(yīng)的發(fā)光二極管點(diǎn)亮[3];P2.0和P2.1各自分別連接一個(gè)開關(guān)S1、S2。當(dāng)閉合開關(guān)S1時(shí),P2.0引腳為低電平,即P2.0=0;當(dāng)S1斷開時(shí),P2.0引腳為高電平,即P2.0=1。開關(guān)S1亦然。將輸入端口控制狀態(tài)與輸出端口LED等亮滅狀態(tài)進(jìn)行梳理、對(duì)應(yīng),得到表2的P1和P2端口狀態(tài)控制表。
表2 P1和P2端口狀態(tài)控制Tab.2 P1 and P2 port state control
分析任務(wù)、設(shè)計(jì)方法后,教師提供轉(zhuǎn)向燈元器件清單,學(xué)生根據(jù)原理圖自主討論,使用Proteus繪制出如圖2的仿真圖。
圖2 模擬汽車轉(zhuǎn)向燈Proteus仿真圖Fig.2 Proteus simulation diagram of automobile turn signal
基于學(xué)生都學(xué)過先導(dǎo)課程C語言,教師只需啟發(fā)學(xué)生畫出流程圖,指導(dǎo)學(xué)生編程的程序結(jié)構(gòu)。
此時(shí),教師引入Keil μVision仿真軟件,在該環(huán)境下完成程序的運(yùn)行調(diào)試,獲得機(jī)器碼。
將機(jī)器碼加載到仿真圖C51單片機(jī)芯片后,當(dāng)開關(guān)S0、S1都處于斷開時(shí),左、右轉(zhuǎn)向燈均為熄滅狀態(tài),汽車直行;當(dāng)汽車需要左轉(zhuǎn)時(shí),將開關(guān)S0閉合,左轉(zhuǎn)向燈閃爍;當(dāng)汽車需要右轉(zhuǎn)時(shí),將開關(guān)S1閉合,右轉(zhuǎn)向燈閃爍;如果汽車出現(xiàn)故障需要打開警示燈,將S0、S1同時(shí)按下,此時(shí)左、右轉(zhuǎn)向燈均為閃爍狀態(tài)。
本任務(wù)模擬人們常見的汽車轉(zhuǎn)向燈顯示控制功能,用MCS-51系列單片機(jī)的P1端口接收駕駛員發(fā)出的左轉(zhuǎn)、右轉(zhuǎn)命令(閉合開關(guān)S0、S1),控制連接到P0端口上的兩個(gè)發(fā)光二極管閃爍,模擬的汽車的左、右轉(zhuǎn)向指示燈[3]。
學(xué)生通過完成本任務(wù),可以進(jìn)一步理解MCS-51系列單片機(jī)并行I/O端口的使用,訓(xùn)練了采用C語言基本語句進(jìn)行結(jié)構(gòu)化程序設(shè)計(jì)的能力。
在單片機(jī)并行I/O端口教學(xué)中,以8位LED燈閃爍控制任務(wù)引入課題,以模擬汽車轉(zhuǎn)向燈控制項(xiàng)目為任務(wù)進(jìn)行實(shí)踐。學(xué)生通過引入的項(xiàng)目學(xué)習(xí)基本知識(shí),通過完成具體的工作任務(wù),認(rèn)識(shí)學(xué)習(xí)的重點(diǎn)及結(jié)構(gòu)化編程技巧,理解基本理論知識(shí)及應(yīng)用特,在完成任務(wù)的過程中培養(yǎng)學(xué)生利用所學(xué)知識(shí)分析實(shí)際問題、解決實(shí)際問題的能力。實(shí)踐證明,采用“任務(wù)驅(qū)動(dòng)法”教學(xué),能充分調(diào)動(dòng)學(xué)生的積極性和團(tuán)隊(duì)合作意識(shí),有助于對(duì)知識(shí)點(diǎn)的掌握,有助于培養(yǎng)學(xué)生的創(chuàng)造性和探索精神。
但同時(shí),在教學(xué)反饋中我們發(fā)現(xiàn):(1)學(xué)生能力參差不齊,各小組完成情況不同。因此,分組時(shí)教師應(yīng)統(tǒng)籌兼顧,將能力相似的學(xué)生分在一組,細(xì)化任務(wù),針對(duì)不同能力學(xué)生分配不同難度的任務(wù);(2)“任務(wù)驅(qū)動(dòng)法”教學(xué)中,老師是課堂的組織者、任務(wù)的輔導(dǎo)者,不是課堂的領(lǐng)導(dǎo)者、任務(wù)的執(zhí)行者,如何適時(shí)指導(dǎo)、歸納總結(jié)、點(diǎn)評(píng)提升,需要老師設(shè)計(jì)好環(huán)節(jié)、把握好尺度。
數(shù)字技術(shù)與應(yīng)用2021年8期