李 芳 李家慶
摘要 針對(duì)單片機(jī)實(shí)驗(yàn)裝置教學(xué)的缺陷,提出一種基于Proteus與Keil結(jié)合的單片機(jī)實(shí)驗(yàn)仿真平臺(tái)。以設(shè)計(jì)一個(gè)電腦時(shí)鐘實(shí)驗(yàn)為例,詳細(xì)介紹單片機(jī)實(shí)驗(yàn)仿真平臺(tái)的構(gòu)建及使用方法,并給出完整的原理圖及編程思路。最后分析該平臺(tái)的教學(xué)優(yōu)勢(shì)——可為實(shí)驗(yàn)室開(kāi)展開(kāi)放性、綜合性、創(chuàng)新性實(shí)驗(yàn),加深學(xué)生單片機(jī)理論知識(shí)和培養(yǎng)創(chuàng)新思維能力,提供靈活、完備、系統(tǒng)的實(shí)驗(yàn)環(huán)境。
關(guān)鍵詞Proteus;單片機(jī)實(shí)驗(yàn);仿真平臺(tái)
中圖分類號(hào):G642.423 文獻(xiàn)標(biāo)識(shí)碼:A 文章編號(hào):1671-489X(2009)04-0067-02
Simulation Platform of Single Chip Computer Experiment based on Proteus and Keil//Li Fang, Li Jiaqing
Abstract In allusion to the limitation of teaching with single-chip computer laboratory equipment, a kind of simulation platform of single-chip computer experiment based on Proteus and Keil is introduced in this paper. Taking designing electronic-clock experiment for example, the construction and application method of the simulation platform for single-chip computer experiment is recommended in detail. This article also presents the complete principle circuit and programming measures. Finally, the advantage of teaching with the simulation platform, which is providing a flexible, complete, systemic experimental environment for laboratory running openly, comprehensively and innovatively, and for enhancing single-chip computer theory and training innovative mental vitality, is analyzed.
Key words Proteus;single-chip computer experiment;simulation platform
Authors address Chongqing University of Science and Technology, Chongqing 401331
目前,許多學(xué)校在單片機(jī)實(shí)驗(yàn)教學(xué)中,都配置有不同廠家不同類型的裝置。但單片機(jī)裝置在實(shí)驗(yàn)教學(xué)中存在許多缺陷。首先,教學(xué)資源不足。隨著生源的不斷擴(kuò)大,許多學(xué)校出現(xiàn)多人共用一臺(tái)實(shí)驗(yàn)裝置的現(xiàn)象。其次,學(xué)生硬件設(shè)計(jì)能力得不到培養(yǎng)。系統(tǒng)裝置的硬件電路是固定的,學(xué)生無(wú)法進(jìn)行硬件電路的設(shè)計(jì),也難以有動(dòng)手練習(xí)硬件的機(jī)會(huì)。再次,實(shí)驗(yàn)教師對(duì)教學(xué)裝置的維護(hù)工作不斷增加。由于裝置使用時(shí)間不斷加長(zhǎng),其壽命也不斷減少,學(xué)生的誤操作也易造成許多器件在使用過(guò)程中經(jīng)常損壞,等等這些都為教學(xué)裝置的維護(hù)增加了難度。另外,單片機(jī)裝置實(shí)驗(yàn)教學(xué)中還存在其他局限性,如裝置本身資金投入、學(xué)生實(shí)驗(yàn)內(nèi)容固定、使用單片機(jī)類型固定、維護(hù)成本不斷增加等。
Proteus和Keil的完美結(jié)合,可為單片機(jī)系統(tǒng)資源、軟件技術(shù)、硬件接口電路、軟件和硬件相結(jié)合的應(yīng)用系統(tǒng)等單片機(jī)理論和實(shí)驗(yàn)教學(xué)提供一個(gè)很好的實(shí)驗(yàn)仿真平臺(tái)。
1 單片機(jī)實(shí)驗(yàn)仿真平臺(tái)的建立
1.1 Proteus軟件Proteus是由英國(guó)Labcenter electronics公司開(kāi)發(fā)的EDA工具軟件,是模擬單片機(jī)及其外圍器件的很好的工具。它的最大特點(diǎn)就是,可以仿真51系列、AVR、PIC等常用的MCU及其外圍電路,如LCD、LED、RAM、ROM、鍵盤、馬達(dá)、AD/DA、部分SPI器件、部分I2C器件等[1]。
1.2 Keil uVision3Kei1是美國(guó)Keil Software公司開(kāi)發(fā)的,是目前廣為應(yīng)用的51單片機(jī)軟件開(kāi)發(fā)工具之一。它支持匯編、C語(yǔ)言以及混合編程,同時(shí)具備功能強(qiáng)大的軟件仿真功能,在軟件模擬仿真方式下不需要任何單片機(jī)硬件即可完成用戶程序仿真調(diào)試,同時(shí)也提供多種硬件仿真功能。
1.3 Proteus與Keil的完美結(jié)合將Proteus與Keil整合起來(lái),充分利用各自的仿真功能,建立一套完整的單片機(jī)系統(tǒng)仿真平臺(tái),可為單片機(jī)的實(shí)驗(yàn)教學(xué)工作帶來(lái)極大方便。
下面是Proteus與Keil的整合過(guò)程。
1)在單片機(jī)實(shí)驗(yàn)室每臺(tái)電腦上安裝Proteus6.7SP3和KEIL uVision3軟件。
2)把Proteus安裝目錄下VDM51.dll(C:Program FilesLabcenter ElectronicsProteus6 ProfessionalMODELS)文件復(fù)制到Keil安裝目錄下的C51BIN目錄中。
3)編輯Keil目錄下tools.ini文件,在[C51]項(xiàng)下,加入TDRV5=BINVDM51.DLL("PROTEUS MONITOR-51 DRIVER") (注意:TDRVX為單片機(jī)軟件仿真的硬件配置設(shè)置,在本實(shí)驗(yàn)室中,設(shè)為TDRV5)。
4)確定單片機(jī)實(shí)驗(yàn)?zāi)康摹?/p>
5)打開(kāi)Proteus ISIS軟件。設(shè)計(jì)單片機(jī)實(shí)驗(yàn)硬件組成框圖,建立硬件連接原理圖。
6)打開(kāi)Keil uVison3軟件。建立單片機(jī)系統(tǒng)軟件工程,針對(duì)實(shí)驗(yàn)要求編制程序。
7)在Keil uVison3軟件中選擇菜單“Project”->“Options for Target‘Target1”,在出現(xiàn)的對(duì)話框中選擇“Output”頁(yè)面,選中“Creat Hex File”選項(xiàng);選擇“Debug”頁(yè)面,選中“Use”-PROTEUS VSM MONITOR-51 DRIVER,進(jìn)入“Settings”,Host設(shè)為127.0.0.1,Port設(shè)為8000。
8)在Proteus ISIS軟件中,選擇菜單“Source”->“Add/Remove Source Code Files”,在出現(xiàn)的對(duì)話框中點(diǎn)擊“Chang”按鈕,選擇從Keil uVison3軟件工程中所生成的HEX文件,點(diǎn)擊“OK”。在Debug菜單下選中“Use Remote Debug Monitor”。
9)在Keil uVison3軟件中直接進(jìn)行仿真,連續(xù)運(yùn)行或單步運(yùn)行,即可在Proteus ISIS軟件中看到單片機(jī)硬件仿真運(yùn)行結(jié)果。
在整合過(guò)程中,單片機(jī)實(shí)驗(yàn)教學(xué)平臺(tái)建立過(guò)程為1)~3)項(xiàng),實(shí)驗(yàn)過(guò)程為4)~9)項(xiàng)。
2 電腦時(shí)鐘設(shè)計(jì)實(shí)例
以電腦時(shí)鐘為例,介紹基于Proteus與Keil的單片機(jī)實(shí)驗(yàn)仿真平臺(tái)的具體實(shí)驗(yàn)方法。
2.1 實(shí)驗(yàn)要求在“單片機(jī)原理及其應(yīng)用”課程中,最基本的實(shí)驗(yàn)要求是獨(dú)立完成一個(gè)電腦時(shí)鐘:1)設(shè)計(jì)電腦時(shí)鐘實(shí)現(xiàn)方案;2)具有顯示北京時(shí)間(時(shí)分秒)的功能;3)具有修改時(shí)、分功能;4)其他發(fā)揮。
2.2 電路設(shè)計(jì)與實(shí)現(xiàn)實(shí)驗(yàn)分析:由實(shí)驗(yàn)要求決定,能夠顯示時(shí)分秒,可以選用單片機(jī)課程授課中所熟悉的6位數(shù)碼管顯示;能夠修改北京時(shí)間,則需設(shè)有按鍵;附加功能可加上指示燈或聲光提示等;單片機(jī)芯片選用普通的8031即可滿足要求。
電路實(shí)現(xiàn)過(guò)程:打開(kāi)Proteus ISIS軟件,出現(xiàn)程序主窗口界面;鼠標(biāo)左鍵單擊窗口左側(cè)元器件工具欄的P按鈕;在出現(xiàn)的窗口中選擇所需要的器件,點(diǎn)擊OK按鈕,器件被添加到主窗口左側(cè)的元器件列表區(qū);將所需器件都添加到元件列表區(qū)之后,再依次點(diǎn)擊各器件,左鍵放到繪圖區(qū),右鍵選中元件,左鍵編輯其屬性,合理布局后進(jìn)行連線[2-3],最后加上電源和接地符號(hào),原理圖即可繪制完成(圖1);保存設(shè)計(jì)文件。
2.3 軟件設(shè)計(jì)與實(shí)現(xiàn)
1)功能設(shè)計(jì),分為顯示設(shè)計(jì)與按鍵設(shè)計(jì)。顯示設(shè)計(jì):設(shè)計(jì)2種顯示模式——北京時(shí)間顯示模式與修改時(shí)分模式。按鍵設(shè)計(jì):3個(gè)按鍵分別定義為MODE、UP、DOWN,MODE鍵切換顯示模式;UP與DOWN鍵在修改時(shí)分模式時(shí)有效,UP鍵修改時(shí),DOWN鍵修改分。
2)軟件編程思路??捎密浖〞r(shí)的方式,實(shí)現(xiàn)北京時(shí)間的運(yùn)行。硬件選擇11.0592M晶振,軟件可采用定時(shí)器0,16位計(jì)時(shí)模式,定時(shí)5 ms實(shí)現(xiàn)數(shù)據(jù)管動(dòng)態(tài)掃描。對(duì)按鍵處理需消抖處理,可采用定時(shí)消抖的方法。
3)經(jīng)過(guò)編程實(shí)驗(yàn),得出結(jié)果。連續(xù)運(yùn)行程序,在北京時(shí)間顯示模式可看到圖1所示的運(yùn)行結(jié)果;按下MODE鍵則切換到修改時(shí)分模式界面(如圖2所示)。修改時(shí)分后,切換到北京時(shí)間,可實(shí)現(xiàn)北京時(shí)間的更新。因此仿真運(yùn)行結(jié)果滿足實(shí)驗(yàn)要求。
從電腦時(shí)鐘實(shí)例來(lái)看,基于Proteus與Keil的單片機(jī)仿真平臺(tái)可完全達(dá)到實(shí)驗(yàn)教學(xué)的目的。
3 單片機(jī)仿真教學(xué)優(yōu)勢(shì)
針對(duì)單片機(jī)課程實(shí)驗(yàn)相關(guān)的教學(xué),可以采取硬件給定、軟件及功能由學(xué)生自行完成的教學(xué)方法。針對(duì)單片機(jī)課程設(shè)計(jì)相關(guān)的教學(xué),可采取根據(jù)課程設(shè)計(jì)內(nèi)容、硬件與軟件均由學(xué)生自行設(shè)計(jì)的教學(xué)方法,這正好滿足課程設(shè)計(jì)的教學(xué)需求[4]。
基于Proteus與Keil的單片機(jī)仿真實(shí)驗(yàn)教學(xué)具有比較明顯的優(yōu)勢(shì),如涉及到的實(shí)驗(yàn)實(shí)習(xí)內(nèi)容全面、硬件投入少、學(xué)生可自行設(shè)計(jì)、實(shí)驗(yàn)過(guò)程中損耗小、與工程實(shí)踐最為接近、維護(hù)量少等。它可為實(shí)驗(yàn)室開(kāi)展開(kāi)放性、綜合性、創(chuàng)新性實(shí)驗(yàn),提供靈活、完備、系統(tǒng)的實(shí)驗(yàn)環(huán)境。這些優(yōu)點(diǎn)是傳統(tǒng)單片機(jī)實(shí)驗(yàn)裝置無(wú)法比擬的[5]。
4 結(jié)束語(yǔ)
單片機(jī)實(shí)驗(yàn)仿真平臺(tái)雖然可以為實(shí)驗(yàn)教學(xué)帶來(lái)很大方便,但也存在其缺點(diǎn),如無(wú)法代替對(duì)硬件的直觀認(rèn)識(shí)和培養(yǎng)實(shí)踐動(dòng)手能力。而對(duì)于如全國(guó)電子設(shè)計(jì)競(jìng)賽和畢業(yè)設(shè)計(jì)的輔導(dǎo),均需要培養(yǎng)學(xué)生的整體系統(tǒng)設(shè)計(jì)、分析問(wèn)題和解決問(wèn)題的能力,單靠實(shí)驗(yàn)仿真平臺(tái)是無(wú)法達(dá)到這種教學(xué)要求的。但無(wú)論是單片機(jī)實(shí)驗(yàn)教學(xué)或是單片機(jī)課程設(shè)計(jì)或畢業(yè)設(shè)計(jì),該實(shí)驗(yàn)教學(xué)平臺(tái)均為加深學(xué)生單片機(jī)理論知識(shí)和培養(yǎng)學(xué)生創(chuàng)新能力提供了完備的單片機(jī)系統(tǒng)實(shí)驗(yàn)環(huán)境。
參考文獻(xiàn)
[1]趙義強(qiáng),康靜,郭向亮.Proteus仿真軟件在單片機(jī)設(shè)計(jì)中的應(yīng)用[J].中國(guó)集成電路,2007,16(2):58-61
[2]蔡希彪,曹洪奎,芳琳.單片機(jī)電子時(shí)鐘系統(tǒng)的設(shè)計(jì)與仿真[J].中國(guó)科技信息,2007(4):61-63
[3]劉心紅,郭福田,孫振興,等.Proteus仿真技術(shù)在單片機(jī)教學(xué)中的應(yīng)用[J].實(shí)驗(yàn)技術(shù)與管理,2007,24(3):96-98
[4]田豐.虛擬實(shí)驗(yàn)與真實(shí)實(shí)驗(yàn)的整合研究[J].實(shí)驗(yàn)技術(shù)與管理,2005,22(11):89-92
[5]秦曉梅,陳育斌,楊建華.單片機(jī)綜合設(shè)計(jì)實(shí)驗(yàn)課程的建設(shè)與開(kāi)發(fā)[J].實(shí)驗(yàn)技術(shù)與管理,2004,21(2):114-118