1.引言 大學生在面對象“高等數學”這種較難的基礎課程時,可以沿襲中學課程的學習方法,不需要動手實踐,也可以應對。因為當前大學生不缺應試與做習題的能力。然而面對《單片機原理及應用》這樣需要通過實踐才能理解其中抽象、繁雜概念的課程時,原來應付基礎課程的方法失效,許多學生遇到了前所未有的困惑與不適應。對機械專業的學生來說,“單片機”這樣帶有計算機科學特點的知識使他們尤為不適應,造成學習效果不佳,學習興趣提不起來。“數據指針”、“狀態標志位”、“工作寄存器”、“中斷”等等這些聞所未聞的概念是什么,有什么作用,為什么會有這些東西,計算機運行怎么需要那么多的抽象概念。這些對于計算機運行原理還是未知數的學生來說確實是困難的。因為不少初學者會想當然認為計算機運行與操作看起來是那么友善與簡單,而接觸到原理的時候,卻會遇到那么多晦澀難懂的概念,這種理想與現實的巨大落差,導致興趣驟然下降,如果不加以改善,課程教學難以取得理想的效果。因此從激發學生學習興趣入手,探討提高單片機課程學習效果的方法意義重大。 另一方面,各大學都設置相應的實驗課、創新實踐課,每年也有各類創新訓練項目,以及機械創新設計、機器人或挑戰杯等大學生學科競賽。這些實踐項目往往是機電相結合,是單片機知識應用的重要平臺,也是檢驗大學生是否將所學的知識應用到創新實踐,檢驗課程學習效果的重要試驗田。因此研究將單片機學習與創新實踐相結合互動雙贏的方法有著積極的實用價值。 本文應此背景提出,從激發學生學習興趣入手,既提高課堂學習效果,又鼓勵大學生投身實踐與比賽,使課程知識應用于實踐,促進了單片機學習與創新實踐的互動雙贏。 2.改革教學方法,提高學生學習興趣 傳統的單片機課程教學注重理論,授課一般按“結構”、“指令”、“編程”、“接口擴展”等過程進行,這種方式固然需要,然而如果僅僅是理論的灌輸,則顯得枯燥無味,學生難以提起興趣。另一方面,當前許多單片機教程也是按照上述思路介紹,語言文字都是呆板的專業術語。有時,有些專業詞可能都未解釋就被用來又解釋另一生疏專業詞的功用。比如剛出現“程序狀態字寄存器”,就用“進位”和“溢出”來說明程序狀態字寄存器就是存儲這些狀態特征。那么“進位”、“溢出”又是什么意思,代表什么現象,并未進行說明,而這樣的現象在單片機教材中幾乎遍地都是。這些造成了初學者的困惑,也是學生普遍反映這門課抽象的重要原因。 因此對于單片機中普遍出現的抽象名詞,應該改進教學方法,用容易理解的方式進行傳授。本文提出并實施了以下幾種改進的教學方法。 2.1 多采用比喻手法,化抽象為形象 對一些單片機術語可采用比喻的方式進行傳授,引導學生與生活中的類似現象聯系起來,化抽象為形象。 比如為了讓學生理解什么是“存儲器”,什么是“寄存器”,兩者有什么區別。可將“存儲器”比喻成是圖書館,可存儲較多的書。但是圖書館離我們有些遠,對于使用非常頻繁的書,放在圖書館就不方便了,就必須放在我們的身邊,比如宿舍。CPU的“寄存器”就類似宿舍,存的書不多,但存取方便。CPU在運算時,也是類似道理,需要迅速處理大量臨時數據,寄存器可使CPU就地取信息,提高了運行速度。這種形象的比喻,方便了學生理解寄存器與存儲器的概念區別。我們發現這種形象的教學方法增強了教學趣味性,提高了學生學習興趣,學生反映良好。 2.2 合理解釋概念,讓學生認識規律 對一些單片機術語可采用合理的解釋讓學生認識到計算機科學知識點的基本特點與規律。 比如程序狀態字寄存器中的“進位”標志位。學生剛開始是不能理解這是什么,為什么需要它,而我們發現大多教材并沒有給出一個淺顯易懂的解釋。其實在開始講單片機時就應該告訴學生,計算機就是在模擬人類的許多行為。但人類一個很不經意的行為,計算機是不會自動執行的,這就是計算機科學的基本特點。比如,在這個“進位”標志位的概念上,要告訴學生,兩個八位數相加,完全可能高于八位,產生進位,人相加時會自然地記住“進位”這個事。而一個八位的單片機只能存八位結果信息,并不會自動存儲這個現象,需要某個存儲單元來記錄兩數相加是否發生了進位,因此當初設計單片機或計算機的人就使用程序狀態寄存器的一個“位”來存儲了這個現象。 類似這樣的現象在單片機或計算機中十分普遍。比如“堆棧”就像生活中的杯子可放東西,但人們生活中將杯中的東西拿走是可以看到杯底的,而對計算機來說,這個現象不會自動發生,需要人為通過軟件使指針指向棧底,這就是堆棧指針的一個重要作用。 通過這樣的解釋讓學生開始初步適應計算機只是個機器,許多動作需要我們指定它完成。有了類似的解釋,并且在以后不斷強化,學生就不會對新的類似現象感到陌生,而是提前知道了有關規律,有利于消除恐懼感,調動學生學習興趣。 2.3 強調與實驗相結合,增強教學趣味性 單片機是一門實踐性很強的課程,十分有必要采取實驗演示或讓學生動手實踐,讓學生真正感受單片機的功用與趣味。 教學中,我們根據當前多媒體教學作為主要模式的特點,有時采用單片機的虛擬動畫演示,讓學生清晰看到投影畫面顯示的模擬效果,提高了課堂教學的趣味性。在課堂教學中,發現僅憑陳述或模擬演示單片機是如何運行仍然比較抽象,如果能實際立即運行給學生看,則會顯著改善教學效果。對于比較簡單的情況,學生一般能夠現場理解有關程序,這類實驗也不占用課堂教學太多時間,因此我們有時直接將實驗箱帶到課堂讓學生現場觀察單片機的運行效果,增強了教學的直觀性與趣味性。最典型的有發光二極管輪流點亮等簡單實驗,可使學生立刻體會并驗證單片機端口怎樣傳送電平信息,怎樣通過軟件實現移位,從而生成前述的效果。 對于較復雜的程序,課堂上進行詳細講解,比較枯燥,讓學生當場理解并不現實,即便課堂上進行實驗,也未必能讓學生將知識消化得透。我們認為對于這樣的復雜程序與實驗,適合采用課堂講解大體思路與關鍵點,要求學生課后花充足的時間理解消化,然后在實驗課上進行驗證。時間允許,則可在課堂上再次解釋其中的關鍵點,使學生鞏固知識點。這種講課與實驗相結合的“學到做,做到學”模式,可有效解決學生對復雜知識的理解,消除學生對復雜知識的恐懼。在理解知識的基礎上,生動的實驗效果,可大大增強學生對單片機深入學習的信心與興趣。 2.4 利用創新實踐與比賽激發學生學習興趣 當前大多院校都重視學生的課外創新實踐,鼓勵學生參加大學生學科競賽,其中單片機是機電類學生常用的控制平臺,單片機的應用可以說就在大學生的生活周圍。因此,將大學生創新實踐的實例、大學生學科競賽的作品作為成功案例向學生介紹,可起到激發學生學習興趣的效果。筆者從事指導大學生創新實踐與學科競賽多年,基本上都有單片機的應用。在課堂上筆者將自己指導的2012年獲全國獎的樓道清潔機器人與機器章魚作品有關演示錄像、以及參賽者的創作過程給學生介紹與展示。同學們對其中作品的巧妙以及控制得自然感到特別神奇。不少好奇的同學摩拳擦掌,充滿著對單片機學習的渴望,不僅想學好這門課,也想在課余時間應用單片機知識制作自己設計的作品,鍛煉自己,努力把課本知識與創新實踐相結合。 大學生創新實踐或比賽作品往往需要較復雜的單片機系統,對于課堂上大多還未接觸過單片機的同學來說,不適合直接將復雜的單片機平臺或程序講授給學生,需要化復雜為簡單。因此,我們在教學中,進行了很大的簡化。比如作品中機器人遇障礙避讓,控制實際使用的是STM32平臺,該平臺擁達百個中斷,用戶輸入輸出口達幾十,甚至上百,這樣的復雜系統對于毫無單片機概念的同學是難以適應與理解的,但基本的道理仍然是某輸入端口接受到電平信號變化,觸發單片機轉入中斷服務,中斷服務程序就是一個控制電機不同旋轉速度與方向的子程序,從而使輪子差動旋轉,實現機器人轉身的動作。針對課堂教的是51單片機及匯編語言,我們就采用簡單光敏電阻接受遮擋,通過中斷輸入口產生中斷信號,使51單片機原本控制的電機旋轉暫停或反轉來簡單模擬實現,以此聯系到復雜的機器人控制,使學生理解機器人控制實現的基本過程與原理。該方式有利于解開單片機的運行奧秘,消除學生對單片機學習的恐懼。 3.鼓勵大學生積極將知識應用于實踐 當前許多大專院校為鼓勵大學生動手實踐,積極創新,設立各種實踐創新訓練項目,教育部以及有關協會組織各類學科競賽,培養促進大學生的實踐創新能力。這些實踐項目與競賽是課堂所學知識應用的重要試驗田,不僅考驗著大學生的實際應用能力,也是對教師專業課程教學效果、引導大學生應用知識效果的檢驗。 3.1充分挖掘人才,向高級應用轉型 僅憑課堂上學習的知識不足應對作品的機電控制實現,需要培養學生在課堂知識的基礎上進一步學習更復雜的單片機知識,更重要的是將知識應用于作品的實現中。而教師不可能為所有學生提供實踐項目的相關指導。為此,我們通過教學積極發現人才,吸收了若干有興趣有能力的同學,充分挖掘他們的潛能,利用課余時間向他傳授STM32等高級平臺的應用,主要鼓勵他們在課堂單片機知識的基礎上自學高級平臺單片機的知識,掌握其中軟件的特點,不斷鍛煉自己,為復雜的單片機平臺在實踐與參賽作品的成功應用做好知識的儲備。 筆者實際就從教學的班級中選拔了五到位同學參加了兩個小組的作品控制實現,分別參加了2012年、2013年的大學生課外學術作品競賽與國家級、省級大學生創新訓練項目;2014年又在單片機教學所在班級選拔了若干位同學參加機械創新設計大賽,并提前讓有關同學自學STM32等32位的單片機平臺,讓他們早早做好準備,及時使他們向高級應用轉型,這樣為創新實踐作品的成形,比賽的順利進行鋪平了道路。 3.2 安排階梯性訓練,迎接實踐與比賽的挑戰 選拔學生向高級應用轉型是使大學生參加創新實踐與學科競賽的基本要求。那么如何轉型,幫助他們盡快適應作品制作的要求,是最終使單片機知識在實踐中成功應用的保證。 為了迎接實踐創新項目與大學生學科競賽,給學生安排了階梯性訓練,從簡單練習,到復雜實驗,使他們既快速又扎實地學好學深單片機知識。例如,我們提前讓他們走進本學院的實驗室,重點進行更迫切需要的傳感器中斷響應、定時器、繼電器、電機控制等51單片機實驗。然后在我們自己購置的若干STM32單片機開發實驗平臺上,讓他們及早掌握ARM指令的基本特點。由于有了51單片機的基礎,學生學起來已經不很費勁,特別是STM32支持C語言編程,提供了大量的庫函數,有些方面甚至比51單片機掌握起來更容易,而又能勝任多傳感器復雜控制的要求。這些為迎接實踐項目與比賽的挑戰做好了準備。 在2012年、2013年多次訓練大學生參加創新實踐項目,筆者指導的團隊獲立國家級、省級4項。還經常鼓勵并安排學生參加實踐創新性的學科競賽,其中“升降伸縮式樓道清潔機器人”作品在全國機械創新設計大賽獲一等獎,其它作品也獲得了全國機械創新設計大賽二等獎、南通市首屆大學生課外學術作品一等獎、優秀獎等獎項。這些創新項目與參賽作品幾乎都是機電相結合,都依靠單片機控制實現,充分證明了我們倡導的單片機教學與應用方法的成功之處。 4.結束語 單片機教學歷年來是各高校老師教學的難點,學生普遍感到知識抽象難懂,而另一方面單片機知識又是大學生創新實踐迫切需要的知識點。為此,我們以激發學生興趣為切入點,提出多項有利于調動學生學習積極性的教學改革方法,又將大學生創新實踐、學科競賽與課堂單片機教學相結合,提高課堂教學效果,同學們反映良好,同時也促進了大學生創新實踐、學科競賽取得顯著成效。這些證實了我們教學改進方法的有效性,希驥對今后單片機教學方法的發展帶來積極的參考價值。
|
|