何秋生, 趙志誠(chéng)
(太原科技大學(xué) 電子信息工程學(xué)院, 山西 太原 030024)
單片機(jī)原理及應(yīng)用技術(shù)是一門(mén)實(shí)踐性和工程性較強(qiáng)的課程,對(duì)培養(yǎng)自動(dòng)化專業(yè)學(xué)生的實(shí)踐能力和解決實(shí)際復(fù)雜工程問(wèn)題能力有著十分重要的作用,同時(shí)有助于工程教育專業(yè)認(rèn)證畢業(yè)要求的達(dá)成[1-5]。從前年我校自動(dòng)化專業(yè)準(zhǔn)備申請(qǐng)工程教育專業(yè)認(rèn)證開(kāi)始,就針對(duì)學(xué)生工程能力的達(dá)成進(jìn)行案例教學(xué)的探索和實(shí)踐。由于單片機(jī)原理及應(yīng)用技術(shù)課程既能聯(lián)系自動(dòng)化專業(yè)理論知識(shí),又能盡可能地涉及實(shí)際生產(chǎn)、生活的復(fù)雜工程問(wèn)題,因此從該課程開(kāi)始,通過(guò)案例的設(shè)計(jì)突出實(shí)踐教學(xué)的特點(diǎn),強(qiáng)調(diào)理論實(shí)踐并重,激發(fā)學(xué)生學(xué)習(xí)興趣,挖掘?qū)W生學(xué)習(xí)潛力,助力提高人才培養(yǎng)質(zhì)量。
工程教育專業(yè)認(rèn)證是指專業(yè)認(rèn)證機(jī)構(gòu)針對(duì)高等教育機(jī)構(gòu)開(kāi)設(shè)的工程類(lèi)專業(yè)教育實(shí)施的專門(mén)性認(rèn)證,其核心是要確認(rèn)工科專業(yè)畢業(yè)生達(dá)到行業(yè)認(rèn)可的既定質(zhì)量標(biāo)準(zhǔn)要求,是一種以培養(yǎng)目標(biāo)和畢業(yè)出口要求為導(dǎo)向的合格性評(píng)價(jià)。工程教育專業(yè)認(rèn)證中畢業(yè)要求的內(nèi)涵,主要體現(xiàn)在專業(yè)畢業(yè)要求應(yīng)能覆蓋中國(guó)工程教育認(rèn)證通用標(biāo)準(zhǔn)中的12條。實(shí)驗(yàn)案例設(shè)計(jì)有助于畢業(yè)要求中問(wèn)題分析、設(shè)計(jì)/開(kāi)發(fā)解決方案、研究、使用現(xiàn)代工具、個(gè)人和團(tuán)隊(duì)、溝通、項(xiàng)目管理以及終身學(xué)習(xí)的達(dá)成[6]。
2007年教育部頒發(fā)了《關(guān)于進(jìn)一步深化本科教學(xué)改革,全面提高教學(xué)質(zhì)量的若干意見(jiàn)》([2007]2號(hào))中指出,要“大力加強(qiáng)實(shí)驗(yàn)、實(shí)習(xí)、實(shí)訓(xùn)、實(shí)踐和畢業(yè)設(shè)計(jì)(論文)等實(shí)踐教學(xué)環(huán)節(jié),特別要加強(qiáng)專業(yè)實(shí)習(xí)和畢業(yè)實(shí)習(xí)等重要環(huán)節(jié)”[7-8]。2015年12月27日通過(guò)的《全國(guó)人民代表大會(huì)常務(wù)委員會(huì)關(guān)于修改〈中華人民共和國(guó)高等教育法〉的決定》(2016年6月1日起施行)中,將高等教育法中的第五條修改為:“高等教育的任務(wù)是培養(yǎng)具有社會(huì)責(zé)任感、創(chuàng)新精神和實(shí)踐能力的高級(jí)專門(mén)人才”[9],特別要加強(qiáng)專業(yè)實(shí)習(xí)和畢業(yè)實(shí)習(xí)等重要環(huán)節(jié)。國(guó)家也提出了“大眾創(chuàng)業(yè),萬(wàn)人創(chuàng)新”的理念。創(chuàng)新的關(guān)鍵是培養(yǎng)具有創(chuàng)新能力的人才[10-11]。劉延?xùn)|前副總理也提出“以服務(wù)需求、提高質(zhì)量為主線”“更加突出創(chuàng)新精神和實(shí)踐能力培養(yǎng)”的總體思路[12]。因此牢固樹(shù)立育人為本的教育理念,以學(xué)生為中心,發(fā)揮教師的主導(dǎo)作用,把創(chuàng)新創(chuàng)業(yè)教育貫穿人才培養(yǎng)全過(guò)程,推進(jìn)信息技術(shù)與教育教學(xué)深度融合。
在醫(yī)療行業(yè)中,體溫、心律、血壓、體重等作為每個(gè)人在體檢時(shí)的必測(cè)參數(shù),為了能實(shí)時(shí)、便捷地得到這些參數(shù),設(shè)計(jì)了一個(gè)數(shù)字心率計(jì)的實(shí)驗(yàn)案例,該設(shè)計(jì)利用單片機(jī)(型號(hào)可以自己選擇)作為控制器,能方便快捷地將一個(gè)人的心律以數(shù)字形式顯示出來(lái)。
2.1.1 案例的設(shè)計(jì)指標(biāo)和任務(wù)
數(shù)字心率計(jì)實(shí)現(xiàn)的功能和具體指標(biāo)如下:
(1) 測(cè)量方便,測(cè)量精度達(dá)到±2次/分;
(2) 測(cè)量心律的報(bào)警上下限可以設(shè)置;
(3) 測(cè)量值超出報(bào)警上下限時(shí)能報(bào)警;
(4) 測(cè)量心律實(shí)時(shí)結(jié)果要以數(shù)字形式顯示。
案例具體的設(shè)計(jì)任務(wù)包括:
(1) 分析任務(wù),收集整理資料;
(2) 確定方案,并從功能角度給出總體設(shè)計(jì);
(3) 選擇器件,繪制電路圖;
(4) 連接實(shí)物并編寫(xiě)軟件;
(5) 系統(tǒng)調(diào)試。
2.1.2 電路設(shè)計(jì)
本心率計(jì)案例電路圖如圖1所示。電路主要包括單片機(jī)最小系統(tǒng)模塊、顯示模塊、按鍵模塊、信號(hào)接收模塊和信號(hào)放大模塊組成。
單片機(jī)最小系統(tǒng)模塊主要包括方案所用的單片機(jī)(這里選擇STC89C51單片機(jī))、時(shí)鐘電路、復(fù)位電路、晶振電路以及電源電路。要求理解典型電路的工作原理。
顯示模塊采用經(jīng)典的LCD1602液晶顯示器,主要負(fù)責(zé)將采集到的心跳速度以數(shù)字的形式顯示在1602上,也顯示上下限參數(shù)設(shè)置界面。
按鍵模塊根據(jù)系統(tǒng)需求采用3個(gè)獨(dú)立按鍵完成系統(tǒng)功能的設(shè)置和加減計(jì)數(shù)設(shè)置。3個(gè)按鍵分別連接到單片機(jī)的P3.0、P3.1、P3.2端口。鍵盤(pán)獨(dú)立,彼此之間不存在相互干擾,同時(shí)單片機(jī)接口接線簡(jiǎn)單,直接通過(guò)讀取單片機(jī)端口的電平判斷相應(yīng)鍵盤(pán)是否有輸入,操作簡(jiǎn)單。
信號(hào)接收模塊采用5 mm紅外對(duì)管D1與D2組成紅外傳感器。紅外光電傳感器通過(guò)指尖來(lái)對(duì)脈搏信號(hào)進(jìn)行檢測(cè)。由于紅外發(fā)射二極管中電流越大,發(fā)射光發(fā)射角度越小,產(chǎn)生的紅外光發(fā)射強(qiáng)度越大,于是對(duì)R5的阻值的選取要求嚴(yán)格。R5選擇220 Ω也考慮了紅外接收管感應(yīng)紅外光的靈敏度。當(dāng)R5阻值太大時(shí),通過(guò)紅外發(fā)光二極管的電流較小,發(fā)射光強(qiáng)度微弱,紅外接收器光敏電阻接收到的光信號(hào)十分微弱,紅外接收管無(wú)法準(zhǔn)確區(qū)別有無(wú)心跳時(shí)的信號(hào)。同時(shí),當(dāng)R5電阻值選擇過(guò)小時(shí),紅外發(fā)光二極管發(fā)射強(qiáng)度大,人體組織中因血液流速產(chǎn)生組織透明度變化的測(cè)量方法易被忽略不計(jì),紅外接收管也無(wú)法準(zhǔn)確辨別有無(wú)心跳時(shí)的信號(hào)。
信號(hào)放大模塊采用放大器LM358對(duì)信號(hào)進(jìn)行放大。由于檢測(cè)電路檢測(cè)到的心跳脈沖信號(hào)是一種微弱到約為幾十毫伏的低頻率的信號(hào),還伴隨著多種信號(hào)干擾,因此心率信號(hào)通過(guò)電阻R8、電容C4進(jìn)行低通濾波來(lái)去除掉高頻信號(hào)的干擾。
2.1.3 程序設(shè)計(jì)
系統(tǒng)主程序流程圖如圖2所示。主程序先對(duì)系統(tǒng)初始化,包括定時(shí)器、液晶等模塊,然后接收按鍵信息,判斷是否有按鍵被按下,如果沒(méi)有按鍵按下,那么報(bào)警上下限值采用默認(rèn)的40和100,如果有按鍵按下,那么根據(jù)上下調(diào)節(jié)鍵調(diào)節(jié)上下限報(bào)警值,之后通過(guò)讀取檢測(cè)電路檢測(cè)到的心律值,并判斷心律值是否超過(guò)上下限,如果超過(guò)則顯示測(cè)量值并報(bào)警,否則顯示測(cè)量值,如此循環(huán)進(jìn)行,直到退出。系統(tǒng)子程序包括顯示子程序、報(bào)警子程序、測(cè)量子程序、鍵盤(pán)調(diào)節(jié)子程序以及中斷子程序。
圖1 心率計(jì)電路
圖2 系統(tǒng)主程序流程圖
2.1.4 實(shí)驗(yàn)測(cè)試
圖3是心率計(jì)硬件電路及測(cè)試結(jié)果圖。其中顯示設(shè)置的最低心率值為40,最高心率值為70,當(dāng)前測(cè)到的心率值為80,超過(guò)了設(shè)定的最高心率值,故報(bào)警指示燈閃爍并發(fā)出報(bào)警聲音。
圖3 硬件電路測(cè)試結(jié)果
大多數(shù)用戶需要少量物體的稱重裝置用來(lái)測(cè)量自己所購(gòu)買(mǎi)物體的重量,但是實(shí)際生活中,這類(lèi)裝置要么價(jià)格高(性價(jià)比低),要么精度低。于是設(shè)計(jì)了一個(gè)基于單片機(jī)的數(shù)字式便攜的簡(jiǎn)易電子秤案例。
2.2.1 案例的設(shè)計(jì)指標(biāo)和任務(wù)
簡(jiǎn)易電子秤的設(shè)計(jì)指標(biāo)和功能:
(1) 測(cè)量范圍為0~5 kg;
(2) 測(cè)量誤差不大于0.01 kg;
(3) 具有重量及總價(jià)顯示功能;
(4) 具有單價(jià)設(shè)置功能;
(5) 具有超重報(bào)警功能;
(6) 具有去皮功能。
案例設(shè)計(jì)的主要任務(wù)是根據(jù)設(shè)計(jì)指標(biāo)選擇單片機(jī)型號(hào)、稱重傳感器等核心器件,并設(shè)計(jì)出相應(yīng)電路和根據(jù)功能要求編寫(xiě)程序。
2.2.2 電路設(shè)計(jì)
根據(jù)案例設(shè)計(jì)指標(biāo)和功能要求,簡(jiǎn)易電子秤主要包括主控系統(tǒng)模塊、檢測(cè)模塊、鍵盤(pán)輸入模塊、顯示模塊以及報(bào)警模塊。其中主控模塊采用STC89C52最小系統(tǒng)。簡(jiǎn)易電子秤電路如圖4所示。
圖4 簡(jiǎn)易電子秤電路圖
信號(hào)檢測(cè)模塊。根據(jù)測(cè)量精度和誤差,該模塊采用電阻應(yīng)變式壓力傳感器,將采集到的微弱信號(hào)放大并通過(guò)A/D轉(zhuǎn)換器HX711轉(zhuǎn)換為數(shù)字信號(hào)送入單片機(jī),其中HX711與單片機(jī)P2.0、P2.1引腳相連接。
鍵盤(pán)輸入模塊。考慮到設(shè)置參數(shù)時(shí)需要數(shù)字輸入(包括單價(jià)、物體代碼輸入等),故設(shè)計(jì)為4*4矩陣式鍵盤(pán),這樣除了必要的10位數(shù)字外,還可以設(shè)置去皮、清零以及刪除等功能鍵。鍵盤(pán)輸入連接到單片機(jī)的P3.0—P3.7引腳。
顯示模塊主要負(fù)責(zé)顯示單價(jià)、物體代碼、重量、總價(jià)等信息,采用LCD1602以實(shí)現(xiàn)該功能,連接在單片機(jī)的P1.0—P1.2以及P0.0—P0.7。
報(bào)警模塊主要負(fù)責(zé)在超重情況下發(fā)出警告,設(shè)計(jì)為PNP三極管的集電極與蜂鳴器直接相連,PNP三極管的基極與單片機(jī)的P1.3引腳相連,當(dāng)基極為低電平時(shí),PNP三極管導(dǎo)通,蜂鳴器發(fā)出警報(bào)。當(dāng)基極為高電平時(shí),PNP三極管斷開(kāi),蜂鳴器停止警報(bào)。
2.2.3 程序設(shè)計(jì)
系統(tǒng)程序采用C語(yǔ)言在Keil環(huán)境下編寫(xiě),主程序流程圖如圖5所示。
圖5 主程序流程圖
主流程圖中,數(shù)據(jù)接收處理子程序部分包括啟動(dòng)AD轉(zhuǎn)換器、讀取轉(zhuǎn)換值、數(shù)據(jù)轉(zhuǎn)換處理;鍵盤(pán)處理程序主要包括數(shù)字鍵和功能鍵的處理程序;顯示程序主要包括對(duì)顯示內(nèi)容的處理和顯示;超重報(bào)警程序主要是控制單片機(jī)P1.3引腳以0.5 s高電平和0.5 s低電平循環(huán)輸出,直到按下復(fù)位鍵或者稱重的重量在稱重范圍內(nèi)時(shí)停止報(bào)警。
2.2.4 實(shí)驗(yàn)測(cè)試
圖6是簡(jiǎn)易電子秤的實(shí)物測(cè)試圖,其中圖6(a)是實(shí)際的啞鈴,重量為0.75磅(0.340 2 kg),圖6(b)是測(cè)試一個(gè)小啞鈴重量的截圖,小啞鈴的單價(jià)設(shè)置為96.38元/kg,計(jì)算到的總價(jià)為33.34元。
從圖6中可以看出,實(shí)際測(cè)到的啞鈴重量為0.346 kg,誤差為0.006 kg,誤差滿足設(shè)計(jì)要求。
在實(shí)際教學(xué)過(guò)程中,設(shè)計(jì)了由初級(jí)案例、中級(jí)案例到復(fù)雜案例層次化的一系列案例,層次化的實(shí)驗(yàn)案例如圖7所示。在案例教學(xué)過(guò)程中,引導(dǎo)學(xué)生分析每個(gè)關(guān)鍵模塊如何選擇、是否可以用其他芯片或者電路模塊替換等,逐步培養(yǎng)學(xué)生學(xué)習(xí)的積極性和興趣。案例教學(xué)結(jié)果說(shuō)明,學(xué)生在學(xué)習(xí)過(guò)程中也不斷提出了一些有創(chuàng)新性的問(wèn)題。
圖7 層次化實(shí)驗(yàn)案例
以學(xué)生為中心的教學(xué)理念,就是要在教學(xué)過(guò)程中引導(dǎo)學(xué)生、把學(xué)習(xí)的權(quán)力交給學(xué)生,要尊重學(xué)生、相信學(xué)生,采用互動(dòng)性較強(qiáng)的案例教學(xué),激發(fā)學(xué)生的學(xué)習(xí)興趣,讓課堂教學(xué)充滿活力,改變學(xué)生被動(dòng)學(xué)習(xí)的學(xué)習(xí)狀況,讓學(xué)生能真正在課堂學(xué)習(xí)中找到學(xué)習(xí)樂(lè)趣,通過(guò)學(xué)生自己的創(chuàng)意讓學(xué)生獲得成功的體驗(yàn)。案例教學(xué)也可以在解決復(fù)雜工程問(wèn)題中培養(yǎng)學(xué)生解決工程問(wèn)題的能力。