摘 要:高職是新的教育模式,其學生也具有特殊性,對他們的《單片機》課程的教學方法也要改變,要找到適合他們的教學方法。機器人是高科技的產(chǎn)物,功能強大。把簡單機器人引入單片機教學可以加強教學過程的直觀性,趣味性。改變計算機語言學習的抽象性和枯燥性。有利于激發(fā)學生的學習興趣,提高學習的積極性。使他們在好奇、探索的狀態(tài)下由淺入深地學習單片機,使得這些不善于抽象思維的學生在學習單片機的過程中不那么困難。本文在這一方面加以探討。
關鍵詞:單片機;機器車;教學方法;虛實結(jié)合;寓教于樂
中圖分類號:G712
高等職業(yè)教育是我國教育事業(yè)新的發(fā)展方向之一,高職教育和普高教育有著很大的區(qū)別,從普高向高職教學的轉(zhuǎn)變是一個復雜過程,筆者一直在高職學院任教,為了適應這種轉(zhuǎn)變,在《單片機》課程的教學中,我們引入了深圳歐鵬公司的“C51版兩輪教育機器人”(以下簡稱機器車)來輔助教學。以下我結(jié)合機器車在單片機的教學實踐和體會,探討一下機器車用于單片機教學的特點和長處。
1 職業(yè)院校單片機教學方法的改革
根據(jù)自己對單片機的學習、應用及教學實踐的體會和思考,認為在我們職業(yè)學院單片機教學方法的改革中應該強調(diào)以下兩個方面:
1.1 寓教于樂
我們知道,學習的動力有一部份來自興趣,并且這樣的學習效率是最高的也是最容易持久。而教學過程的趣味性也可以刺激學生的興趣,因而提高學生學習的積極性和主動性。特別是我們的學生,培養(yǎng)他的興趣和教會他們知識技能同樣重要。因此我們設計的教學方法首先要注意這一點,無論是單片機教學還是其他課程都是一樣。
1.2 虛實結(jié)合
我們知道,單片機不僅有電路也有程序,程序語句都是抽象的符號,這些符號代表的含義直接看不到而是需要想象。而程序的運行又是看不見摸不著。對于這種比較抽象事物的學習,特別剛剛接觸計算機語言的初學者本來就是很困難,再加上我們這些學生習慣直觀事物,缺乏抽象思維,那就更困難了。
要是能把抽象的程序及程序的運行形象化具體化,無疑對他們的學習會很大的幫助。具體來說,就是把程序的語句及語句的執(zhí)行落實到一個具體的事物上,試著能夠看得見摸得著,把虛和實聯(lián)系起來,用具體的東西幫助他去認識虛擬抽象的東西,就像用示波器把看不見的電子運動形象化來幫助理解它學習它那樣。
機器人是高科技的產(chǎn)物,功能強大。把簡單機器人引入單片機的教學可以加強教學過程的直觀性,趣味性。改變單片機學習的抽象性和枯燥性。有利于激發(fā)學生的學習興趣,提高學習的積極性。使他們在好奇、探索的狀態(tài)下由淺入深地學習單片機,使他們在學習單片機課程的過程中不那么困難,幫助他們順利地跨過這第一道門檻。
2 機器車概況
2.1 機械結(jié)構(gòu)
機器車整體結(jié)構(gòu)如圖1,骨架內(nèi)左右兩側(cè)各裝有一個伺服電機,各驅(qū)動一個大輪,作為機器車的驅(qū)動,另一個小輪作為導向輪,骨架上面裝有一塊控制板,可加裝一塊液晶顯示器,一塊蜂窩實驗板,骨架下面裝有電池盒。
2.2 伺服電機的驅(qū)動信號
驅(qū)動信號的周期為20ms,脈寬從1.3-1.7ms,1.5ms為臨界點零速.小于1.5ms,順時針旋轉(zhuǎn),1.3ms達到順時針最大值。大于1.5ms,逆時針旋轉(zhuǎn),1.7ms達到逆時針最大值。
3 機器車用于單片機教學
下面用三個程序例子來探討機器車用于單片機教學情況。
3.1 產(chǎn)生電機驅(qū)動信號的程序
(1)源程序
CYCLE: SETB P1.0 ①
LCALL D1_5MS ②
CLR P1.0 ③
LCALL D20MS ④
AJMP CYCLE ⑤
(2)程序分析
參考信號波形圖圖2。
第1句使輸出從低電平度變?yōu)楦唠娖?,產(chǎn)生信號第一個脈沖的上升沿。
第2句把信號高電平狀態(tài)保持1.5ms,產(chǎn)生第一個脈沖的寬度。
第3句使輸出從高電平度變?yōu)榈碗娖?,產(chǎn)生第一個脈沖的下降沿。
第4句把信號低電平狀態(tài)保持20ms。產(chǎn)生信號的第一個完整周期。
第5句不斷重復1-4句便產(chǎn)生了周期性的驅(qū)動信號如圖2。
這個信號驅(qū)動電機作靜止不轉(zhuǎn),若把2句中的D1_5MS改為D1_3MS或D1_7MS就可以生成圖3和圖4的信號,驅(qū)動電機作全速順時針或全速逆時針旋轉(zhuǎn)。
(3)小結(jié)
使用仿真軟件,可以把該段程序產(chǎn)生的信號顯示出來,那就是把程序的運行形象化,就是虛實結(jié)合第一步。
3.2 驅(qū)動機器車運動的程序
上面例子產(chǎn)生的是驅(qū)動一個電機旋轉(zhuǎn)的信號,若使機器車運動則要同時驅(qū)動兩個電機旋轉(zhuǎn),要產(chǎn)生二個驅(qū)動信號。
(1)源程序
CYCLE: SETB P1.1 ①
LCALL D1_7MS ②
CLR P1.1 ③
SETB P1.0 ④
LCALL D1_3MS ⑤
CLR P1.0 ⑥
LCALL D20MS ⑦
AJMP CYCLE ⑧
(2)程序分析
第1,2,3語句產(chǎn)生了P1_1端口的第一個1.7ms的脈沖。
第4,5,6語句產(chǎn)生了P1_0端口的第一個1.3ms的脈沖。
第7句把P1_1和P1_0的低電平保持20ms,這樣便生成了二路驅(qū)動信號的第一個完整周期。
第8句不斷重復1~7句就得到了兩路完整的驅(qū)動信號。
P1_1驅(qū)動一個輪子逆時針旋轉(zhuǎn),P1_0驅(qū)動另一個輪子順時針旋轉(zhuǎn)。由于兩個電機安裝的方向相反,所以此時兩個輪子旋轉(zhuǎn)的方向是同向。便可驅(qū)動機器車前進或后退。假如此時是機器車全速前進,那么把2句和5句中的D1_7MS和D1_3MS對調(diào),就會使機器車全速后退,把2句和5句中的某一個變?yōu)镈1_5MS就會使機器車全速左轉(zhuǎn)或右轉(zhuǎn)。
總之通過改變著這兩個延時就可以使機器車做出各種方向各種速度的勻速運動,加上程序技巧還可以實現(xiàn)變速運動。
(3)小結(jié)
如果說3.1的例子只是把程序的執(zhí)行和一個圖像聯(lián)系起來仍不夠具體,那本例程序就是把程序執(zhí)行和一個具體物體的運動結(jié)合起來,真正做到了虛實結(jié)合。每條單片機的語句的作用都會在產(chǎn)生的結(jié)果上得到體現(xiàn),這樣必定會促進學習者對這些語句用法的理解和掌握。
3.3 觸覺巡航功能的程序
(1)觸覺傳感器電路原理
結(jié)合前面機器車外形圖1可以看到,機器車前端安裝著兩條胡須,當機器車前行時若左側(cè)有障礙,會碰到左觸須,參看觸須電路圖6,左觸須因觸碰產(chǎn)生的移動可以使K2閉合。則會使P2_3端口從高電平變?yōu)榈碗娖健纹瑱C根據(jù)這個信號發(fā)出驅(qū)動信號使機器車后退右轉(zhuǎn)以避開左側(cè)障礙。同理,當單片機收到右邊有障礙的信號時,會控制機器車后退左轉(zhuǎn)以避開右側(cè)障礙,若左右兩側(cè)都收到障礙信號,則單片機會控制機器車后退掉頭運行。
(3)程序分析
前面例3.1和3.2兩個程序都是很簡單的,僅僅是簡單的語句和程序段,用到的單片機功能也較少,還不能算是一個具有完整功能的單片機控制程序。而在本例中,機器車可以在一個相對簡單的環(huán)境中,自由、自主地實現(xiàn)巡航運動。程序中比較多地運用了單片機的功能:如I/O端口的信號輸入判斷與輸出控制,各種程序語句及分支結(jié)構(gòu)、循環(huán)結(jié)構(gòu)、函數(shù)調(diào)用等等,是一個可以完成比較完整功能的單片機控制程序。通過這個程序初學者可以體會到一個可以執(zhí)行完整功能的單片機程序是什么樣子,為使用單片機技術解決實際控制問題打下基礎。
(4)小結(jié)
當機器車能自主完成巡航功能時,它就具備了一定的智能性,其趣味性也明顯增強,初學者通過自己學習單片機,自己設計程序?qū)崿F(xiàn)了這樣的功能,他一定會很興奮很受鼓舞,喚起他繼續(xù)學下去的興趣和熱情。
3.4 結(jié)論
從以上三個程序例子可以看到,單片機知識的運用是一步一步地由淺入深,從簡單到復雜,從局部到整體,每一步都是把程序的語句及執(zhí)行和具有一定觀賞性的機器車的行為動作聯(lián)系在一起,讓初學者一步一步有的放矢地學習和理解單片機。相信這樣的學習過程對學生會更有吸引力,也更容易接受。
4 結(jié)束語
需要說明的是,使用機器車來輔助單片機的教與學,無論是在學習的初級階段,還是深入學習都是很有意義的。在初級階段,他的趣味性和“虛實結(jié)合”的特點有助于初學者循序漸進的入門,把機器車作為單片機程序的一個載體,從而能夠把單片機的程序設計、執(zhí)行和結(jié)果這一串的學習過程連接起來形成閉環(huán)反饋,加速學習者對單片機程序設計的初步理解和掌握,解決單片機學習的入門問題。在深造階段,它的豐富的可擴展功能給了學習者廣闊的空間和余地,配合上C語言程序和各種傳感器可以實現(xiàn)很多復雜動作和功能,就可以完成許多不可思議的動作,呈現(xiàn)出各種富多采的功能,可以說是趣味無窮,一定會引起初學者的極大興趣和熱情,還參加機器人比賽等活動。因此把機器人運用到高職生的單片機課程教學中是很有意義和必要的。
參考文獻:
[1]秦志強.C51單片機應用與單片機程序設計[M].北京:北京電子工業(yè)出版社,2010.
作者單位:北京信息職業(yè)技術學院軟件工程系,北京 100018