摘 要: 為了使學生更好地掌握微機原理這門課程,大部分學校都開設了微機原理實訓課程,但是該實訓課程如何開設,開設的內容、學時又如何確定,實訓過程中應如何管理學生和材料等一直困擾著老師。本文作者根據多年對微機原理實踐性教學環節的經驗,列舉了微機原理實訓課程的重點教學內容和管理方法。
關鍵詞: 微機原理 單片機 時鐘電路 數碼管時鐘
開設微機原理課程實踐性教學環節的目的,主要是通過動手來鞏固所學的微機原理知識,因此在實踐性教學環節中,開設的實訓課程題目應涉及單片機最小系統設計、A/D轉換、D/A轉換、總線擴展(8255)等。實訓學時一般為2周,任務安排第1天以教學為主,介紹實訓課程題目的相關知識。第2天開始陸續發放材料,第一周基本以焊接為主,第2周開始自行調試,最后2天驗收,驗收以作品效果、答辯情況和提交報告的質量為主。在實踐過程中,學生根據自己的能力和興趣愛好來選擇相應的課題方向。這里介紹最小系統的設計。對于單片機最小系統設計,給出的設計題目是數碼管時鐘電路設計,該課題涉及的內容有:上電復位電路、震蕩電路、鍵盤掃描,數碼管動態掃描等。難度適中,能滿足學生利用單片機設計時鐘的想法,適合不同層次的學生來設計和學習。
1.時鐘電路硬件的設計
LED數碼管時鐘電路采用24h計時方式,時、分、秒用六位數碼管顯示。并有按鍵處理模塊來進行時、分、秒的調試。數碼管時鐘電路如圖1所示,其采用AT89C51單片機最小化應用設計,6個LED顯示采用動態掃描方式實現,顯示時、分、秒。P0口輸出段碼數據,P2.0—P2.5口作掃描輸出(需接上拉電阻),為了提供LED數碼管的驅動電流,用三極管9012和芯片74LS244來驅動輸出,增加共陽極數碼管的亮度。為了提高秒計時的精確性,利用12MHz晶振來T0定時中斷。
2.系統軟件程序的設計
電子時鐘的系統程序由主程序和子程序組成,主程序包含初始化設置、按鍵處理、數碼管顯示模塊等。子程序包括要編寫的定時器/中斷服務子程序,在定時器/中斷服務子程序中進行對時鐘的調整。具體程序可上考試周刊網教學資源庫下載。
(1)主程序
主程序流程圖如圖2所示,主程序對顯示單元和定時器/計數初始化,然后重復調用數碼管顯示模塊、按鍵處理模塊,當有鍵按下時,轉入相應程序。
(2)按鍵處理模塊
按鍵處理設置為:如沒有按鍵,則時鐘正常走時。當按下S1時進入調分狀態,時鐘停止走動;按下S1、S2來進行加一減一操作。繼續按S1鍵可分別進行分和小時的調整,最后按S1鍵退出調整狀態,按鍵功能還可以自行調整、創新,如加入秒表顯示、定時等功能。
(3)定時器/計數器T0中斷服務程序
定時器/計數器T0用于時間計時,選擇方式1,重復定時,設定時間為50MS,定時時間到則中斷,定時中斷程序為:(MOV TMOD,#11H)(MOV TL0,#0B0H)(MOV TH0,#3CH),在中斷服務程序中用一個計數器對50MS計數,計20次則對秒單元加1,秒單元的計數器加到60則對分單元加1,同時秒單元清0;分單元的計數器加到60則對時單元加1,同時分單元清0;時單元的計數器加到24則對時單元清0,標志一天時間計滿。定時器/計數器T0中斷服務程序流程圖如圖3所示。
3.總結
任何理論知識都來源于實踐,理論知識也只有在實踐中,才能得到強化并真正發揮指導作用。學生經過實踐性教學環節的鍛煉,通過焊接、板路設計、元器件的認識、程序的編寫和調試,能夠對微機原理課程有很深的認識。通過一些小制作更能提高學生對該課程的熱衷程度,對學生的現在及將來都有很大的影響。較多的學生實踐教學環節結束后再回來要回自己的作品,說是拿回去放在自己的床前,可以用3節干電池供電來顯示時間,以做留念。
參考文獻:
[1]中國機械工業教育協會組編.微機原理與應用[M].北京:機械工業出版社,2005.
[2]朱定華,戴汝平.單片微機原理與應用[M].北京:北方交通大學出版社,2003.
[3]陸紅偉,微機原理實驗與課程設計指導書[M].北京:中國電力出版社,2006.
注:本文中所涉及到的圖表、注解、公式等內容請以PDF格式閱讀原文