趙來定 白曉東
摘要:探討了單片機原理及應(yīng)用課程的教學體系,對當前該門課程存在的問題進行了分析,提出了教學中可將傳統(tǒng)的單片機與現(xiàn)代功能強大的單片機相結(jié)合;匯編語言的學習有助于培養(yǎng)學生的高效率編程能力和故障分析能力;可通過工程演示加實驗教學的方式,合理安排課堂教學內(nèi)容。通過這些方式,激發(fā)學生對這門課程的學習興趣。
關(guān)鍵詞:單片機;興趣引導;學習規(guī)劃
中圖分類號:G642.0 文獻標志碼:A 文章編號:1674-9324(2019)30-0129-02
一、引言
現(xiàn)代大學教育中,許多大學將單片機原理及應(yīng)用作為專業(yè)基礎(chǔ)課,教學課時一般安排為32學時。本門課的學習意義在于工程開發(fā)應(yīng)用,但32課時無法去安排一個完整的理論加工程實踐的教學。近些年來,有的文獻指出采用立體化教學的方法[1-2],有的文獻提出采用實踐引導教學興趣的方法[3-4],有的文獻提出了單片機模塊化課程的教學設(shè)計思想[5],但這些方法仍是割裂了理論與實踐的教學,學生對教學內(nèi)容的誤區(qū)仍然存在,教學方法不被接受,教學效果仍較差。筆者從事單片機教學及科研工作多年,針對單片機的課堂教學摸索,提出了改進的方法。經(jīng)教學實踐證明,這些方法是行之有效的。
二、單片機課程教學的現(xiàn)狀
傳統(tǒng)的課堂教學偏重于純理論的講解,以前未接觸過單片機的學生在開始學習后,會覺得內(nèi)容較難,很快會失去學習興趣。參加過電子設(shè)計實踐的一些同學,他們總以為單片機的硬件電路在網(wǎng)上有參照,軟件代碼只是對網(wǎng)上的C語言代碼資源略有改動即可,沒有認識到工程實踐是比較復(fù)雜的,對單片機的認識較片面。傳統(tǒng)的8051單片機教材因發(fā)展較全面、芯片內(nèi)資源及管腳簡單而在課堂教學上被廣泛使用。但目前涌現(xiàn)了許多新型的單片機,這些單片機一般內(nèi)部資源豐富,外部接口較多,如課堂教學主講這些單片機,因內(nèi)容較多較復(fù)雜,故教學課時無法滿足要求。單片機教學主講匯編語言,匯編語言可讀性及可移植性較差,編程極易出錯。怎樣激發(fā)學生去學習和應(yīng)用,也是本課程的課堂教學需要考慮的。
三、單片機課程教學的改革
本節(jié)主要講述了在教學中,對上一節(jié)提出的關(guān)于單片機課程的一些問題進行改革,使得教學內(nèi)容符合實際教學的要求。
1.課程的認識引導。單片機的硬件設(shè)計是在了解芯片內(nèi)的資源及外圍特性的基礎(chǔ)上進行的。一個好的單片機電路設(shè)計師,會根據(jù)不同的工程應(yīng)用場景,選擇不同類型的單片機,設(shè)計的電路應(yīng)該集成度高、體積小、功耗低、性能穩(wěn)定,絕不是濫用和抄襲網(wǎng)上的硬件電路。
單片機的軟件設(shè)計是建立在個性化的硬件電路基礎(chǔ)上的。程序必須根據(jù)硬件電路的連線確定外圍芯片的訪問地址、訪問方式、操作時序等。此外,程序的安排不應(yīng)該是簡單的代碼的堆積,應(yīng)分清優(yōu)先順序,應(yīng)該是高效率地執(zhí)行完成系統(tǒng)要求的功能。
本課程的教學初期,筆者首先引導學生正確認識這門課程,這樣能極大地提高學生的學習興趣。
2.課程內(nèi)容的選擇。8051系列單片機出現(xiàn)早、發(fā)展成熟、可靠性高、不易損壞,故而在教學及實驗中被廣泛使用。另外,8051系列單片機教材對單片機的工作原理闡述較清晰,片內(nèi)資源及結(jié)構(gòu)描述較詳細,對于單片機初學者來說易于接受。以往的課堂教學初期,總有學生提出,應(yīng)該在課堂教學中主講一些功能強大更先進的單片機。但如果課堂教學主講這些單片機,因內(nèi)容較多較復(fù)雜,且目前尚沒有一本完整且闡述清晰的教材可以使用,故教學課時也無法滿足講解要求。筆者在教學過程中,仍以講解8051系列單片機為主,但不局限于課本,在課堂教學中適當?shù)夭迦肓艘恍┤鏜SP430系列、C8051系列、STM32系列等單片機的知識,講解了它們的性能特點,并與經(jīng)典的8051單片機進行了比較,以此來引導學生的學習興趣。
3.程序代碼的學習規(guī)劃。單片機的匯編語言程序可讀性差,而C語言可讀性強、網(wǎng)上資源多、移植性較好,故而學生更容易接受。許多同學在低年級時為參加電子競賽等活動,為快速應(yīng)用單片機,均采用C語言編程的方式,在他們的認識中,單片機的C語言編程是最佳的唯一的選擇,他們的片面認識會影響周圍的同學。筆者在課堂講解前期,首先講解了C語言是一種通用性的語言,可以將其看作一個容器,為了減少描述性,讓其適應(yīng)性較強、無所不能,這個容器就會很大。C語言經(jīng)單片機的編譯工具編譯后,最終還是變成了匯編語言,但一條C語言的語句可能會變成幾條至幾十條匯編語句。筆者課堂上演示了一條關(guān)于浮點運算的C語言語句,將其編譯后,運算仿真顯示其運行時間會很長。
匯編語言的編程是使用者根據(jù)工程應(yīng)用場景來進行的,編程者了解匯編語句的數(shù)據(jù)格式及輸入輸出,故而匯編語言的執(zhí)行時間及耗費的存儲資源均會較少。雖然匯編語言可讀性差,但可以通過多加注釋的方式來解決。單片機C語言編程另一大缺陷是編譯器造成的。筆者從事單片機的開發(fā)工作多年,有時會發(fā)現(xiàn)C語言描述正確,但最終處理結(jié)果不正確。遇到這種情況,只有分析C語言所變成的匯編代碼,才能找出原因。由此可見,能讀懂匯編語言,這也是解決工程實際問題的需要。綜上所述,筆者提倡學生在單片機編程中,采用C語言為主、匯編為輔來進行。由本規(guī)劃可讓學生懂得匯編語言學習的必要性,以避免學生產(chǎn)生排斥和畏難的心理。
4.實踐環(huán)節(jié)的安排。單片機原理及應(yīng)用課程偏重于應(yīng)用,培養(yǎng)體系一般包含理論教學、單片機軟件設(shè)計及仿真、單片機開發(fā)板的應(yīng)用及編程等。課堂教學時應(yīng)該向?qū)W生介紹該培養(yǎng)體系及實踐安排,讓學生了解單片機的理論課學習的效果會影響后繼課程的學習,懂得學好該門課的必要性。
單片機原理及應(yīng)用課程的理論教學一般包含幾個學時的實驗教學,但實驗教學時間較少,如實驗任務(wù)較難將會使學生產(chǎn)生畏難心理,故而實驗教學只能安排編寫和調(diào)試一些簡單的程序。在課堂上,可以用演示的方式介紹筆者所編寫的一些程序,以作為課堂教學的補充。這樣,課堂理論教學也能緊密聯(lián)系實際。
四、結(jié)束語
本文著重研究了單片機原理及應(yīng)用課程的教學體系,課堂上只有通過合理取舍和安排各方面的教學內(nèi)容,精心布置講解次序,這樣,才能激發(fā)學生的學習興趣。
參考文獻:
[1]趙忠華,王靜,楊曉梅.單片機課程的立體化教學模式研究[J].學園:學者的精神家園,2016,(2):59-60.
[2]蘇智華,李敏,劉穎.單片機課程立體輔學教學研究[J].電子測試,2014,(12x):157-158.
[3]張子紅,劉鑫.基于Proteus的單片機課程教學改革[J].單片機與嵌入式系統(tǒng)應(yīng)用,2010,10(11):15-18.
[4]許超,吳新杰,張丹.基于Proteus和Keil的單片機課程教學改革[J].遼寧大學學報:自然科學版,2011,38(1):27-29.
[5]易禮智,龍曉慶,龔亮.《單片機應(yīng)用技術(shù)》課程模塊化教學內(nèi)容的探討[J].電腦知識與技術(shù):學術(shù)交流,2012,(33):7953-7954.