徐靖 梧州市第二職業(yè)中等專業(yè)學(xué)校
淺談單片機(jī)技術(shù)課程實(shí)訓(xùn)項(xiàng)目的實(shí)踐教學(xué)
徐靖 梧州市第二職業(yè)中等專業(yè)學(xué)校
單片機(jī)技術(shù)已經(jīng)成為每個(gè)電氣類技術(shù)工人必須掌握的技能在中職類學(xué)校的課程體系中,單片機(jī)是電子類專業(yè)的專業(yè)核心課程之一,如何更好地使中專生更好地學(xué)習(xí)這門專業(yè)課呢?筆者認(rèn)為培養(yǎng)學(xué)生分析問題的能力,特別是單片機(jī)編程的多樣性需要學(xué)生明白到單片機(jī)技術(shù)的靈活,實(shí)現(xiàn)同一結(jié)果可以有多種途徑。
單片機(jī) 實(shí)訓(xùn)項(xiàng)目 技術(shù)
單片機(jī)從她誕生之日起,永葆青春,單片機(jī)被廣泛應(yīng)用于儀器儀表、工業(yè)自動(dòng)控制、家用電器、醫(yī)用設(shè)備、辦公自動(dòng)化設(shè)備、安全監(jiān)控等領(lǐng)域,涵蓋了人類生活的方方面面。單片機(jī)的應(yīng)用,使電路設(shè)計(jì)重心由硬件設(shè)計(jì)(傳統(tǒng)電路設(shè)計(jì))向軟件設(shè)計(jì)(微控制技術(shù))轉(zhuǎn)移。所以單片機(jī)技術(shù)已經(jīng)成為每個(gè)電氣類技術(shù)工人必須掌握的技能。
在中職類學(xué)校的課程體系中,單片機(jī)是電子類專業(yè)的專業(yè)核心課程之一,如何更好地使中專生更好地學(xué)習(xí)這門專業(yè)課呢?筆者認(rèn)為培養(yǎng)學(xué)生分析問題的能力,特別是單片機(jī)編程的多樣性需要學(xué)生明白到單片機(jī)技術(shù)的靈活,實(shí)現(xiàn)同一結(jié)果可以有多種途徑。以下筆者舉一個(gè)例子說明。(注:本文實(shí)例采用proteus軟件進(jìn)行仿真,編程軟件采用keil u軟件)題目如下:
如圖1,at89c51芯片的P2端口八個(gè)位P2.0-P2.7依次連接八個(gè)發(fā)光二極管D8-D1,要求實(shí)現(xiàn)自上而下流動(dòng)的流水燈(D8,D7,D6…D2,D1循環(huán)點(diǎn)亮)。
(1)掌握使用PROTEUS軟件進(jìn)行畫電路圖仿真。
(2)會(huì)使用keil c語言進(jìn)行編程。
(3)會(huì)使用多種編程方法實(shí)現(xiàn)流水燈。
3.1 畫仿真原理電路圖
圖1
圖2
安裝并打開proteus軟件的“isis 7 professional”,在原理圖繪制界面點(diǎn)擊左上方的“P”按鈕(如圖2所示)。
在彈出的對(duì)話框“keyword”里輸入單片機(jī)芯片型號(hào)“at89c51”,畫好芯片后,再在“keyword”中輸入“l(fā)ed-red”畫出八盞紅色發(fā)光二極管“D1—D8”。再在終端模塊選項(xiàng)中畫出地“ground”。最后將單片機(jī)芯片的P2口的八位(P2.0—P2.7)與八盞發(fā)光二極管相連畫出如圖1所示的仿真原理圖。
如圖1所示八盞發(fā)光二極管的負(fù)極都已經(jīng)接地,數(shù)字電路里地用“0”表示且無法改變,所以我們只能通過改變單片機(jī)“I/O”輸出電平的高低來改變發(fā)光二極管的亮滅。
3.2 編程
編程分為三種方法,每種方法側(cè)重教學(xué)內(nèi)容各不相同。
方法一:位定義編程,本方法是通過位定義語句“sbit”直接控制每一盞燈的亮滅,并通過自減語句“--”來實(shí)現(xiàn)延時(shí)功能。具體程序如下:
這種編程方法適合初學(xué)者教學(xué),可以讓初學(xué)者直接明了看到端口的每一位的亮滅,理解流水燈的工作流程,很好的幫助初學(xué)者理解單片機(jī)的“I/O”口結(jié)構(gòu)。但是缺點(diǎn)就是編程語句過多重復(fù),使程序看起來比較繁冗不夠簡(jiǎn)潔。
方法二:端口賦值法,本方法是將流水燈的八種不同的狀態(tài)(D1亮其余滅,D2亮其余滅……D8亮其余滅)分別寫出數(shù)值。比如:D1亮其余滅,P2口八個(gè)位由高到低數(shù)值分別是:10000000,這是一個(gè)二進(jìn)制數(shù)。我們將它轉(zhuǎn)化為十進(jìn)制數(shù)是:128,然后直接將128這個(gè)十進(jìn)制數(shù)賦值給P2端口。具體編程如下:
這種方法就比位定義賦值簡(jiǎn)潔許多,還加深了同學(xué)們對(duì)二進(jìn)制轉(zhuǎn)十進(jìn)制的理解,也懂得了整個(gè)端口賦值的方法。
方法三:數(shù)據(jù)循環(huán)移動(dòng)法,本方法是將P2端口看成一個(gè)整體數(shù)據(jù),流水燈相當(dāng)于數(shù)據(jù)循環(huán)移動(dòng),具體編程如下:
本程序使用了數(shù)據(jù)循環(huán)移動(dòng)函數(shù),本程序設(shè)計(jì)簡(jiǎn)潔明了。
通過對(duì)這三種方法的比較,不能說誰優(yōu)誰劣,側(cè)重點(diǎn)各有不同,方法一適合剛接觸單片機(jī)的人理解芯片I/O口的使用,方法二是在方法一的基礎(chǔ)上整個(gè)端口賦值,方法三必須是對(duì)單片機(jī)構(gòu)造有一定了解的基礎(chǔ)上才能很好地理解。
這只是單片機(jī)技術(shù)課程實(shí)訓(xùn)項(xiàng)目的一個(gè)簡(jiǎn)單的例子,每個(gè)實(shí)訓(xùn)項(xiàng)目,都應(yīng)該是有多種實(shí)現(xiàn)方法的,這就要求授課教師能夠全面的引導(dǎo)學(xué)生,讓學(xué)生自行思考,自己找到自己解決方法的途徑,教師對(duì)學(xué)生自己想到的方法進(jìn)行分析指導(dǎo)。
實(shí)訓(xùn)項(xiàng)目的開設(shè),更多的是訓(xùn)練學(xué)生解決問題的能力,包括分析問題,提出解決思路,擬定實(shí)施方案,設(shè)計(jì)實(shí)現(xiàn)等。這樣的技能訓(xùn)練才會(huì)收到實(shí)效。讓課堂“活起來”,讓學(xué)生“動(dòng)起來”。
[1]劉守義等.單片機(jī)技術(shù)基礎(chǔ)[M].西安電子科技大學(xué)出版社,2007
[2]王東峰等.單片機(jī)C語言應(yīng)用100例[M].電子工業(yè)出版社,2009
[3]陳海宴.51單片機(jī)原理及應(yīng)用[M].北京航空航天大學(xué)出版社,2010
徐靖(1982—),男,漢族,廣西梧州人,本科,廣西梧州市第二職業(yè)中等專業(yè)學(xué)校,助理講師。