摘 要:介紹Proteus VSM軟件的特點(diǎn)和功能,通過實(shí)例介紹如何用Proteus進(jìn)行單片機(jī)應(yīng)用系統(tǒng)的設(shè)計(jì)與仿真,并介紹Proteus VSM與Keil的連接方法,通過用Proteus VSM軟件對(duì)硬件進(jìn)行仿真,能夠?qū)纹瑱C(jī)的開發(fā)應(yīng)用產(chǎn)生積極的作用。
關(guān)鍵詞:Proteus;單片機(jī)編譯;Keil;嵌入式開發(fā)平臺(tái)
中圖分類號(hào):TP29 文獻(xiàn)標(biāo)識(shí)碼:B
文章編號(hào):1004-373X(2008)06-043-02
Design and Simulation of Single Chip Application System Based on Proteus
CHEN Shaohang,LI Shan,MIAO Liangliang,SU Xianlong
(Chongqing Institute of Technology,Chongqing,400050,China)
Abstract:This paper introduces features and function of the Proteus software,and how to use it realize the design and simulation of single chip system.The way of interfacing Proteus VSM to Keil is also presented indetails.Hardware simulation based on Proteus VSM software can carry very good effect to exploitation of single chip.
Keywords:Proteus;single chip compilation;Keil;embedded development platform
如今基于單片機(jī)的嵌入式系統(tǒng)已廣泛應(yīng)用在國防、教育、工業(yè)等領(lǐng)域。其核心在于其微處理器。因此單片機(jī)的開發(fā)越來越受到重視。但是在傳統(tǒng)的嵌入式系統(tǒng)學(xué)習(xí)中,嵌入式開發(fā)平臺(tái)是必不可少的。購買開發(fā)平臺(tái)又是一筆花費(fèi),而且對(duì)于初學(xué)者來說,原理圖設(shè)計(jì)完成后,需要自己反復(fù)搭電路或多次制PCB板,這大大增加了開發(fā)成本,這是很多初學(xué)者學(xué)習(xí)單片機(jī)的障礙。Proteus是一款優(yōu)秀的單片機(jī)仿真與開發(fā)軟件,他可以以軟件的方式模擬整個(gè)系統(tǒng)的運(yùn)行,這樣大大節(jié)省了開發(fā)周期和開發(fā)成本。
1 Proteus VSM簡(jiǎn)介
Proteus是英國Labcenter公司開發(fā)的電路分析與實(shí)物仿真軟件,其主要特點(diǎn)如下:
(1) Proteus VSM是一種基于標(biāo)準(zhǔn)仿真引擎SPICE3F5的混合電路仿真工具,該軟件可以對(duì)模擬、數(shù)字以及數(shù)?;旌想娐愤M(jìn)行仿真和分析,特別是他能夠仿真整個(gè)系統(tǒng);
(2) 可以模擬單片機(jī)的外圍電路,可以仿真51系列、AVR、PIC等常用的MCU及其外圍電路,并支持ARM7/LPC2000等系列的微處理器;
(3) 具有虛擬示波器、邏輯分析儀、信號(hào)發(fā)生器、虛擬終端等各種虛擬儀器可供使用;
(4) 能夠進(jìn)行原理圖和印制板的設(shè)計(jì);
(5) 能夠和第三方軟件Keil進(jìn)行連機(jī)調(diào)試,能達(dá)到實(shí)時(shí)的仿真效果。
2 Proteus環(huán)境下單片機(jī)應(yīng)用系統(tǒng)的設(shè)計(jì)與仿真
Proteus和Protel,EWB等軟件在電路系統(tǒng)的設(shè)計(jì)上具有相似之處。下面通過實(shí)例介紹如何使用Proteus實(shí)現(xiàn)單片機(jī)電路系統(tǒng)的設(shè)計(jì)與仿真。在該實(shí)例中以AT89C51單片機(jī)為核心,設(shè)計(jì)一個(gè)24小時(shí)制的電子時(shí)鐘。顯示格式為“XXXXXX”,由左向右分別是:時(shí)、分、秒。
2.1 電路原理圖的設(shè)計(jì)
首先運(yùn)行Proteus VSM的ISIS會(huì)出現(xiàn)程序的主窗口界面如圖1所示。點(diǎn)擊Library并選擇PickDevice/Symbol以打開元件庫,輸入所要的元件名稱,雙擊該元件,就完成了該元件的添加。電子時(shí)鐘所用的元件如表1所示,按照表1的器件清單依次添加元件。
2.2 程序的編制
用單片機(jī)定時(shí)/計(jì)數(shù)器T0的定時(shí)功能來實(shí)現(xiàn)50 ms的定時(shí),定時(shí)器每50 ms中斷1次,在中斷服務(wù)程序中,對(duì)中斷次數(shù)進(jìn)行記數(shù),每中斷20次就是1 s。然后再對(duì)秒記數(shù)得到分和小時(shí)值,并送入顯示緩存。程序流程圖如圖3、圖4所示。
由流程圖編寫的匯編程序中斷部分源代碼如下:
T0_INT:[WB]PUSHPSW
PUSHACC
INCR0
CJNE R0,#20,EXIT
MOV R0,#0
INCSECOND
MOV A,SECOND
CJNE A,#60,EXIT
MOV SECOND,#0
INC MINUTE
MOV A,MINUTE
CJNE A,#60,EXIT
MOV MINUTE,#0
INC HOUR
MOV A,HOUR
CJNE A,#24,EXIT
MOV HOUR,#0
EXIT:POP ACC
POP PSW
RETI
2.3 仿真分析
Proteus能夠與各種單片機(jī)編譯程序整合。用 Proteus與Keil聯(lián)合調(diào)試的方法能達(dá)到實(shí)時(shí)跟蹤的仿真效果。
Proteus與Keil的連接設(shè)置的具體步驟如下:
(1) 復(fù)制Proteus安裝目錄下MODELS文件夾里的vdm51.dll到keil/C51/BIN目錄;
(2) 修改Keil安裝目錄下的TOOLS.INI,在[C51]欄目中加入TDRV5=BIN\\\\VDM51.DLL(\"Proteus 6 EMULATOR\"),TDRV后面的數(shù)字是一系列有序的數(shù)字,表示第幾個(gè)TDRV,隨不同版本的Keil,TDRV后面的數(shù)字應(yīng)做相應(yīng)的變化;
(3) 進(jìn)入Keil的Project→options for target,選擇Debug下的Use復(fù)選項(xiàng),在下拉列表項(xiàng)中選擇Proteus 6 EMULATOR;
(4) 啟動(dòng)Proteus的ISIS,在Debug菜單中選擇“Use Remote Debug Monitor ”;
(5) IP設(shè)置為本級(jí)地址127.0.0.1,如果是網(wǎng)絡(luò)電腦就得填入該電腦的IP地址,Port為8000。
在Keil里對(duì)匯編源程序進(jìn)行編譯,并將生成的可執(zhí)行
文件(*.Hex格式)的路徑指定給原理圖里的芯片,現(xiàn)在可以象是在仿真儀上一樣進(jìn)行單步、全速調(diào)試,并可以實(shí)時(shí)觀察軟硬件的互動(dòng)工作的過程和結(jié)果。
圖6是時(shí)鐘運(yùn)行時(shí)的瞬間畫面。
3 結(jié) 語
本文給出Proteus VSM 與KEIL C51集成開發(fā)環(huán)境聯(lián)合調(diào)試的方法,并以電子時(shí)鐘為例簡(jiǎn)單介紹了Proteus VSM 在單片機(jī)應(yīng)用系統(tǒng)設(shè)計(jì)中的應(yīng)用,Proteus有很多更高級(jí)的應(yīng)用,如環(huán)境模擬、噪聲分析等。Proteus的應(yīng)用給嵌入式系統(tǒng)開發(fā)人員節(jié)省了大量的研發(fā)時(shí)間,從而使之能將主要的精力放在系統(tǒng)設(shè)計(jì)上。這對(duì)于提高產(chǎn)品的開發(fā)效率、降低開發(fā)成本等有著非常重要的作用。
參考文獻(xiàn)
[1]徐煜明,韓雁.單片機(jī)機(jī)原理及接口技術(shù)[M].北京:電子工業(yè)出版社,2004.
[2]徐愛鈞,彭秀華.Keil Cx51 V7.0單片機(jī)高級(jí)語言編程與μVision2應(yīng)用實(shí)踐[M].北京:電子工業(yè)出版社,2004.
[3]周立功.增強(qiáng)型80C51單片機(jī)速成與實(shí)戰(zhàn)[M].北京:北京航空航天大學(xué)出版社,2003.
作者簡(jiǎn)介
陳少航 男,1981年出生,重慶工學(xué)院,碩士研究生。主要從事嵌入式系統(tǒng)及自動(dòng)化技術(shù)的研究。