聶婭琴
摘 要:單片機課程設(shè)計是電子、自動化等專業(yè)學習中重要的必修實踐課。在對單片機課程設(shè)計的安排中包括:對匯編語言或C語言的學習,對基于Keilc51的編譯和調(diào)試的學習,對電路仿真聯(lián)調(diào)的學習,程序燒寫的學習等,以使學生掌握應用單片機的技術(shù),從而完成電路功能的設(shè)計。本文將對基于軟件仿真和硬件電路聯(lián)調(diào)的單片機課程設(shè)計的流程進行介紹,并對其進行總結(jié)。
關(guān)鍵詞:單片機課程設(shè)計;軟件仿真;硬件電路聯(lián)調(diào)
在開發(fā)單片機嵌入式系統(tǒng)時,使用最多的軟件就是Keilc51軟件,此軟件是由Keil公司研發(fā)出來的,軟件以uVision2為開發(fā)平臺,具有的功能包括項目管理、編碼、程序生成器等。Keilc51的優(yōu)點在于:其界面的友好性較高、操作便捷,支持對匯編語言、C語言及混合語言的編程、編譯和調(diào)試工作,可以在很大程度上縮短設(shè)計周期,在對程序進行修改時也是很方便的。與此同時,Keilc51還能夠加載Proteus軟件的VSM仿真器,加載之后就可以和Proteus軟件進行聯(lián)機調(diào)試。
一、課程設(shè)計流程
1.編寫相關(guān)指導文件
在對課程設(shè)計著手之前,需要對課程設(shè)計的流程進行文檔編寫,為扎實掌握單片機技術(shù)打下基礎(chǔ)。相關(guān)指導文件包括:單片機項目開發(fā)的相關(guān)教程和例程材料,Keilc51和Proteus軟件的教程和例程材料,單片機課程設(shè)計完成程度的標準,課程設(shè)計大綱等。
2.選擇題目
在制作課程計劃時,需要根據(jù)每個章節(jié)內(nèi)容的不同和課程進展程度對學生的實際學習情況進行考量,通過對學生掌握情況的判斷再對課程設(shè)計進行擬題。課程設(shè)計的題目包括針對各章內(nèi)容的,也包括針對綜合應用的:關(guān)于MSC-51與A/D轉(zhuǎn)換方面的課程設(shè)計題目,關(guān)于MCS-51串口方面的課程設(shè)計題目,關(guān)于定時器與中斷方面的課程設(shè)計題目,關(guān)于I/O接口方面的課程設(shè)計題目,關(guān)于MCS-51的綜合使用方面的題目等。除此之外,還要列出詳細的元件表,供學生選擇和參考,并對課程設(shè)計題目的實現(xiàn)提出相應的具體要求。
3.使用仿真軟件和實現(xiàn)電路功能
在課程設(shè)計實現(xiàn)中,教師可指導學生分組進行,根據(jù)學生所選題目對學生如何在軟件和硬件等方面進行設(shè)計給予指導,以完成設(shè)計的初步內(nèi)容。在對學生進行指導時,可按照以下步驟進行:
(1)繪制程序流程圖,可以使用Visio或Word進行繪制。學生在繪制程序流程圖時,不但要依據(jù)所選題目的設(shè)計要求,還要結(jié)合教師的指導內(nèi)容進行繪制,為接下來的程序設(shè)計做鋪墊。
(2)設(shè)計硬件電路,可以使用Proteus軟件進行設(shè)計。在這一步驟中,首先要對Proteus軟件進行學習,在掌握基本應用原理和方法的基礎(chǔ)上,再依據(jù)設(shè)計要求設(shè)計電路。在學習Proteus軟件的基礎(chǔ)上,由教師組織學生先進行軟件的實際操作學習,需要學生掌握的內(nèi)容有:建立工程文件、選取和使用元件、連接電路和進行調(diào)試運行等。
(3)編寫程序和編譯調(diào)試,根據(jù)上一步驟得到的硬件電路使用匯編語言編寫源程序,再在Keilc51軟件中進行編譯和調(diào)試。教師要指導學生,讓他們依據(jù)課程設(shè)計要求把編寫好的匯編代碼導入到Keilc51軟件中,進行編譯調(diào)試。
(4)聯(lián)合調(diào)試,對Proteus軟件和Keilc51軟件進行聯(lián)合調(diào)試。將在Proteus中畫好的原理圖在ISIS上打開,在Proteus軟件里的DEBUG菜單中選擇use remote debug monitor選項,并對聯(lián)機仿真參數(shù)進行設(shè)置。將在第三步中編譯好的Keilc51工程文件打開,并設(shè)置相關(guān)參數(shù):在Keilc51的project菜單中點擊進入option for target“工程名”,在DEBUG選項的右上方下拉菜單中選擇Proteus VSM Monitor-51 Driver,并設(shè)置聯(lián)機仿真參數(shù)。
4.面包機設(shè)計和電路功能的實現(xiàn)
在這一階段,教師要先組織學生對集成芯片的用途和管腳功能進行學習,之后再在面包板上建電路,電路連接無誤后,使用編程器將程序燒寫到單片機的CPU上,最終使電路功能得以實現(xiàn)。
5.實行課程設(shè)計考核答辯制
教師采用答辯制的形式對學生的課程設(shè)計進行考核,在答辯中真正判斷出學生對課程設(shè)計的體悟到底有多深。
二、成果總結(jié)
本課程設(shè)計將軟件和硬件的使用集合了起來,完成了對單片機的開發(fā)設(shè)計,在實踐過程中取得了良好的結(jié)果,讓學生對軟件電路、硬件電路以及軟硬件聯(lián)調(diào)設(shè)計和面包板設(shè)計都有了更加深入的了解。
1.理論與實踐結(jié)合
在教學中,不僅要將學生的實際情況與學習內(nèi)容結(jié)合起來,還要單片機學習中各個章節(jié)的內(nèi)容和實際動手操作結(jié)合起來。在本課程設(shè)計中,擬定了MSC-51與A/D轉(zhuǎn)換、MCS-51串口、定時器與中斷、I/O接口、MCS-51的綜合使用等方面的數(shù)十個設(shè)計題目,并對課程設(shè)計提出了具體要求。
2.讓學生告別“眼高手低”
仿真聯(lián)調(diào)的結(jié)果雖然不能完全代表在實際情況中的結(jié)果,但是在很大程度上已經(jīng)實現(xiàn)了電路設(shè)計的功能在虛擬情景中的實現(xiàn),為判斷抉擇提供依據(jù)。根據(jù)仿真聯(lián)調(diào)的結(jié)果,我們可以在硬件操作中實際運行,通過這種方式,可以對仿真結(jié)果的正確性和準確程度進行校正。在學生進行實踐之前,要讓學生對集成芯片的芯片用途和管腳功能有所了解,之后在面包板上建電路,然后將程序通過編程器燒寫到單片機的CPU上,這樣就可以完成對電路功能的實現(xiàn)了。在課程設(shè)計的一系列環(huán)節(jié)中,學生既可以學習到各環(huán)節(jié)所需工具的相關(guān)知識,又可以提高學生的動手能力,增強學生的學習積極性。
3.對能力的培養(yǎng)
在實踐課程設(shè)計的過程中,通過繪制流程圖、畫電路圖和編程等,可以鍛煉學生有步驟地實現(xiàn)目標的能力;通過要求學生對程序進行標注,可以有效鍛煉和提高學生的編程能力,增強他們獨立思考的能力。
先進和完善的軟件能夠使硬件的運行達到更好的效果。在單片機課程設(shè)計中引入軟件,可以使學生在了解和掌握單片機的設(shè)計流程的基礎(chǔ)上,熟悉聯(lián)調(diào)的技巧與方法。與一般的單片機仿真軟件不同,在課程設(shè)計中所使用的仿真軟件除了能仿真單片機CPU的實際情形,還能仿真單片機周邊電力和未參加工作的電路情況。此仿真實驗能夠很好地將實驗和工程銜接起來,仿真結(jié)果的無誤將為電路的實際實現(xiàn)提供重要依據(jù)。同時這樣的課程實訓也是工程師的最基本實踐內(nèi)容,這也為學生今后的學習和工作奠定了基礎(chǔ)。
參考文獻:
[1]喬建華.李臨生.Proteus在單片機教學中的應用分析[J].電氣電子教學學報,2009,2(6):24-25.
[2]陳淑芳.基于51單片機的教學實驗系統(tǒng)的設(shè)計與開發(fā)[D]青島:中國海洋大學,2011.
[3]吳慧芳,陸茵.“單片機原理及應用”課程設(shè)計引入Proteus軟件的實踐[J].中國電力教育,2010,5(9):123-124.
[4]彭小峰.雷李.基于Proteus和Keil的整合建構(gòu)單片機虛擬實驗室[J].重慶工學院學報(自然科學版),2009,4(11):67-68.
[5]李海鯤.Proteus在單片機課程設(shè)計中的應用[J].電腦知識與技術(shù),2010,6(16):62-63.