版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、<p><b> 目 錄</b></p><p><b> 1 引言1</b></p><p> 2.Protues 軟件介紹及其功能特點(diǎn)2</p><p> 2.1 Protues 軟件介紹2</p><p> 2.2 Proteus仿真軟件組成3</p>
2、<p> 2.3 Proteus的特點(diǎn)3</p><p> 3. Protues 軟件與 Keil uVision 的結(jié)合4</p><p> 3.1Proteus與Keil介紹4</p><p> 3.1.1Proteus4</p><p> 3.1.2Keil4</p><p>
3、3.2proteus 的工作過(guò)程5</p><p> 3.3Proteus 軟件所提供的調(diào)試手段5</p><p> 3.4 Proteus 和 KEIL uVision3 軟件結(jié)合的實(shí)例6</p><p> 4 基于Proteus的51系列單片機(jī)的仿真7</p><p> 4.1Proteus對(duì)89C51單片機(jī)的仿真7&l
4、t;/p><p> 4.2Proteus在單片機(jī)仿真方面的優(yōu)勢(shì)8</p><p> 4.3單片機(jī)的仿真10</p><p> 4.3.1電子鬧鐘的系統(tǒng)設(shè)計(jì)10</p><p> 4.3.2硬件系統(tǒng)的仿真11</p><p> 4.4實(shí)驗(yàn)結(jié)果12</p><p><b>
5、 5.結(jié)語(yǔ)12</b></p><p><b> 參考文獻(xiàn)12</b></p><p><b> 致 謝12</b></p><p> 利用proteus實(shí)現(xiàn)單片機(jī)系統(tǒng)的仿真</p><p> ?。?
6、 )</p><p> 摘 要:本文介紹了用Proteus軟件進(jìn)行單片機(jī)仿真的制作和演示過(guò)程,總結(jié)了用Proteus軟件進(jìn)行單片機(jī)仿真的優(yōu)點(diǎn)和不足,論述了與 KEIL 編程軟件結(jié)合進(jìn)行編程仿真調(diào)試的詳細(xì)過(guò)程。</p><p> 關(guān)鍵詞:?jiǎn)纹瑱C(jī);Proteus 軟件;Keil 軟件;仿真</p><p> The Simulation of Singl
7、e Chip Using Proteus </p><p> (College of Physics and Electronic Engineering,Electrical Engineering and Its Automation,</p><p> Class1 Grade2003,0323110106)</p><p> Abstract: The
8、 paper introduce the process of simulation of single chip by using Proteus software,and sums up the merits and demerits of simulation by using Proteus and technique of programming simulation debugging with the combinatio
9、n of Keil programming software are described.</p><p> Key Words: single chip,Proteus software, Keil software,simulation</p><p><b> 1 引言</b></p><p> 近年來(lái),隨著計(jì)算機(jī)應(yīng)用技術(shù)的發(fā)展,單
10、片機(jī)仿真技術(shù)有了很大提高,仿真工具的出現(xiàn)為單片機(jī)初學(xué)者提供了一個(gè)很好的學(xué)習(xí)平臺(tái)。目前,用于單片機(jī)仿真的工具很多,有些主要用于軟件仿真,側(cè)重于算法的驗(yàn)證,使用這類軟件初學(xué)者無(wú)法獲得類似于直接用硬件開發(fā)的經(jīng)驗(yàn),而有些仿真軟件雖然能用于硬件仿真,但仿真能力有限,特別是對(duì)CPU外圍的硬件仿真,Proteus是英國(guó)Labcenter公司開發(fā)的電路分析與實(shí)物仿真軟件,[1]它運(yùn)行于Windows操作系統(tǒng)上,可以仿真、分析(SPICE)各種模擬器件和
11、集成電路,在單片機(jī)CPU和外圍器件方面表現(xiàn)出的卓越的仿真能力使其成為目前應(yīng)用最為廣泛的仿真工具之一。Proteus不僅可以仿真8051系列、AVR系列、PIC系列等主要常見系列單片機(jī)及其外圍電路,同時(shí)Proteus提供了數(shù)目龐大,門類齊全的各類常見器件庫(kù),具有較強(qiáng)的PCB設(shè)計(jì)功能,Proteus的操作靈活、自動(dòng)連線等優(yōu)點(diǎn)為設(shè)計(jì)人員提供了一個(gè)非常友好的開發(fā)界面。Proteus不斷完善的功能和強(qiáng)大的仿真能力被越來(lái)越多的設(shè)計(jì)人員所喜愛,在實(shí)踐
12、中的應(yīng)用也越來(lái)越廣泛。</p><p> 2.Protues 軟件介紹及其功能特點(diǎn)</p><p> 2.1 Protues 軟件介紹</p><p> Proteus軟件已有十多年的歷史,在全球廣泛使用,除了其具有和其它EDA工具一樣的原理布圖、PCB自動(dòng)或人工布線及電路仿真的功能外,其革命性的功能是,它的電路仿真是互動(dòng)的,針對(duì)微處理器的應(yīng)用,還可以直接在基
13、于原理圖的虛擬原型上編程,并實(shí)現(xiàn)軟件源碼級(jí)的實(shí)時(shí)調(diào)試,如有顯示及輸出,還能看到運(yùn)行后輸入輸出的效果,配合系統(tǒng)配置的虛擬儀器如示波器、邏輯分析儀等,您不需要?jiǎng)e的,Proteus為您建立了完備的電子設(shè)計(jì)開發(fā)環(huán)境!</p><p> Proteus組合了高級(jí)原理布圖、混合模式SPICE仿真,PCB設(shè)計(jì)以及自動(dòng)布線來(lái)實(shí)現(xiàn)一個(gè)完整的電子設(shè)計(jì)系統(tǒng)。此系統(tǒng)受益于15年來(lái)的持續(xù)開發(fā),被《電子世界》在其對(duì)PCB設(shè)計(jì)系統(tǒng)的比較文章
14、中評(píng)為最好產(chǎn)品—“The Route to PCB CAD”。[2]Proteus 產(chǎn)品系列也包含了我們革命性的VSM技術(shù),用戶可以對(duì)基于微控制器的設(shè)計(jì)連同所有的周圍電子器件一起仿真。用戶甚至可以實(shí)時(shí)采用諸如LED/LCD、鍵盤、RS232終端等動(dòng)態(tài)外設(shè)模型來(lái)對(duì)設(shè)計(jì)進(jìn)行交互仿真。</p><p> 其功能模塊:—個(gè)易用而又功能強(qiáng)大的ISIS原理布圖工具;Proteus混合模型SPICE仿真; ARES PCB設(shè)
15、計(jì). </p><p> PROSPICE 仿真器的一個(gè)擴(kuò)展Proteus VSM:便于包括所有相關(guān)器件的基于微處理器設(shè)計(jì)的協(xié)同仿真。此外,還可以結(jié)合微控制器軟件使用動(dòng)態(tài)的鍵盤,開關(guān),按鈕,LEDs甚至LCD顯示CPU模型。 </p><p> 》支持許多通用的微控制器,如PIC,AVR,HC11以及8051; </p><p> 》交互的裝置模型包括:LED
16、和LCD顯示,RS232終端,通用鍵盤;</p><p> 》強(qiáng)大的調(diào)試工具,包括寄存器和存儲(chǔ)器,斷點(diǎn)和單步模式;</p><p> 》IAR C-SPY 和Keil uVision2等開發(fā)工具的源層調(diào)試;</p><p> 》應(yīng)用特殊模型的DLL界面提供有關(guān)元件庫(kù)的全部文件。</p><p> Proteus 是目前最好的模擬單片機(jī)
17、外圍器件的工具,[3]它可以仿真8051系列、AVR,PIC 等常用的 MCU 及其外圍電路(如 LCD,RAM,ROM,鍵盤,馬達(dá),LED,AD/DA,部分SPI器件,部分IIC器件)。</p><p> 當(dāng)然,軟件仿真精度有限,因而不可能所有的器件都找得到相應(yīng)的仿真模型。用開發(fā)板和仿真器當(dāng)然是最好選擇,可是對(duì)于單片機(jī)愛好者,或許簡(jiǎn)單的開發(fā)應(yīng)該是比較好的選擇。</p><p> Pr
18、oteus是一種混合電路仿真工具,既可以仿真模擬電路又可以仿真數(shù)字電路以及數(shù)字、模擬混合電路,這款軟件的最大特點(diǎn)就在于它能夠模擬單片機(jī)。該軟件的庫(kù)里有:51 系列、AVR系列和 PIC 系列,每個(gè)系列又有很多種不同的型號(hào)可供選擇。除了單片機(jī)模型,Proteus中提供了諸如基于 HD44780 芯片的字符 LCD,基于 T6963C 芯片的點(diǎn)陣 LCD、I2C 存儲(chǔ)器、RAM、PLD等,這些豐富的元器件使得 Proteus不僅適合單片機(jī)入
19、門,也同樣可以用于單片機(jī)開發(fā)。其最大的特色在于它能夠仿真基于微控制器的設(shè)計(jì)系統(tǒng)。Proteus可以很方便地與 Keil C51 集成開發(fā)環(huán)境連接,程序編譯好之后,立即可以進(jìn)行軟、硬件結(jié)合的系統(tǒng)仿真。Proteus與其它單片機(jī)仿真軟件不同的是,它不僅能仿真單片機(jī)CPU的工作情況,也能仿真單片機(jī)外圍電路或沒(méi)有單片機(jī)參與的其它電路的工作情況。因此在仿真和程序調(diào)試時(shí),我們關(guān)心的不再是某些語(yǔ)句執(zhí)行時(shí)單片機(jī)寄存器和存儲(chǔ)器內(nèi)容的改變,而是從工程的角度
20、直接看程序運(yùn)行和電路工作的過(guò)程和結(jié)果。對(duì)于這樣的仿真實(shí)驗(yàn),從某種意義上講,彌補(bǔ)了實(shí)驗(yàn)和工程應(yīng)用間脫節(jié)的矛盾。</p><p> 2.2 Proteus仿真軟件組成</p><p> Proteus仿真軟件包含兩個(gè)應(yīng)用程序,一個(gè)是Proteus ISIS:它是Proteus系統(tǒng)的中心。ISIS擁有超過(guò)8000元件的大型元件庫(kù),包含幾千個(gè)模擬和數(shù)字電路中常用的Spice模型及各種動(dòng)態(tài)元件,
21、如三極管、555定時(shí)器等基本元件,[4]74LS00等常用TTL和CMOS集成塊,完全適合于仿真模型;ISIS為用戶提供了非常友好的作圖界面,元件之間的連線方便、靈活、高效率,剪切、移動(dòng)等操作借助鼠標(biāo)可簡(jiǎn)單地實(shí)現(xiàn);ISIS還支持層次圖設(shè)計(jì),支持WMF、BNP、DXF等多種圖形輸出格式。Proteus的另外一個(gè)應(yīng)用程序就是Proteus ares,用于直接將Proteus ISIS得到的仿真原理圖生成PCB版圖。</p>&
22、lt;p> 2.3 Proteus的特點(diǎn)</p><p> Proteus可以完成質(zhì)量精美可以達(dá)到直接出版水平的原理圖和PCB版圖,和其它仿真軟件相比,其功能上最卓越的改進(jìn)是可以直接仿真CPU及外圍電路,這種仿真能力是Multisim等仿真軟件望塵莫及的。同時(shí)Proteus還提供了豐富的虛擬工具,如示波器、邏輯分析儀等,用戶借助這些虛擬工具可以直接觀察電路系統(tǒng)的硬件結(jié)果,盡管虛擬儀器的精度有限,但整個(gè)操
23、作過(guò)程如同利用硬件仿真器和其他測(cè)試儀器直接進(jìn)行硬件開發(fā),還可以根據(jù)虛擬儀器的結(jié)果直接進(jìn)行源代碼的調(diào)試,以上過(guò)程不同于純粹的軟件仿真?zhèn)戎赜谒惴ǖ尿?yàn)證,這種仿真過(guò)程是可以給用戶帶來(lái)直接的硬件開發(fā)經(jīng)驗(yàn)。</p><p> Proteus的顯著的特點(diǎn)如下:</p><p> (1)全部滿足單片機(jī)軟件仿真系統(tǒng)的標(biāo)準(zhǔn),并在同類產(chǎn)品中具有明顯的優(yōu)勢(shì);</p><p> (2
24、)具有模擬電路仿真、數(shù)字電路仿真、單片機(jī)及其外圍電路組成的系統(tǒng)的仿真、RS-232動(dòng)態(tài)仿真、I2C調(diào)試器、SPI調(diào)試器、鍵盤和LCD系統(tǒng)仿真的功能,有各種虛擬儀器,如示波器、邏輯分析儀、信號(hào)發(fā)生器等;</p><p> (3)目前支持的單片機(jī)類型有:68000系列、8051系列、AVR系列、PIC12系列、PIC16系列、PIC18系列、Z80系列、HC11系列以及各種外圍芯片;</p><
25、p> (4)支持大量的存儲(chǔ)器和外圍芯片。</p><p> 總之,該軟件是一款集單片機(jī)和SPICE分析于一身的仿真軟件,功能極其強(qiáng)大,是其他任何一款軟件不能相比的。</p><p> 3. Protues 軟件與 Keil uVision 的結(jié)合</p><p> 3.1Proteus與Keil介紹</p><p> 3.1.
26、1Proteus</p><p> Proteus是一種電子設(shè)計(jì)自動(dòng)化軟件,提供SchematicDrawing,Spice仿真與PCB設(shè)計(jì)功能,這一點(diǎn)Proteus與Multisim比較類似,只不過(guò)Proteus可以仿真單片機(jī)和周邊設(shè)備,還可以仿真51系列、AVR,PIC等常用的MCU。與Keil和Mplab不同的是它還提供了周邊設(shè)備的仿真,只要給出電路圖就可以仿真,例如74系列、40系列、LED、示波器、邏
27、輯分析儀等各種常用的元器件及測(cè)試設(shè)備;Proteus還提供了大量的元件庫(kù),有RAM,ROM,鍵盤、馬達(dá)、LED,LCD,AD/DA,部分SPI器件、部分IIC器件等;編譯方面支持Keil和Mplab,里面附帶有大量的參考實(shí)例:[5]</p><p> (1) Proteus可提供的仿真元件資源</p><p> Proteus軟件提供了可仿真數(shù)字和模擬、交流和直流等數(shù)千種元器件,達(dá)30
28、多個(gè)元件庫(kù)。</p><p> (2) Proteus可提供的仿真儀表資源</p><p> 虛擬儀器儀表的數(shù)量、類型和質(zhì)量,是衡量仿真軟件實(shí)驗(yàn)室是否合格的一個(gè)關(guān)鍵因素。在Proteus軟件中,理論上同一種儀器可以在一個(gè)電路中隨意調(diào)用。除了現(xiàn)實(shí)存在的儀器外,Proteus還提供了一個(gè)圖形顯示功能,可以將線路上變化的信號(hào),以圖形的方式實(shí)時(shí)地顯示出來(lái),其作用與示波器相似,但功能更多。<
29、;/p><p> 這些虛擬儀器儀表具有理想的參數(shù)指標(biāo),例如極高的輸入阻抗、極低的輸出阻抗。這些都盡可能減少了儀器對(duì)測(cè)量結(jié)果的影響。</p><p> (3) Proteus可提供的調(diào)試手段</p><p> Proteus提供了比較豐富的測(cè)試信號(hào)用于電路的測(cè)試,這些測(cè)試信號(hào)包括模擬信號(hào)和數(shù)字信號(hào)。</p><p><b> 3.
30、1.2Keil</b></p><p> Keil軟件是德國(guó)開發(fā)的一個(gè)51單片機(jī)開發(fā)軟件平臺(tái),最初只是一個(gè)支持C語(yǔ)言和匯編語(yǔ)言的編譯器軟件。后來(lái)隨著開發(fā)人員的不斷努力地改進(jìn)以及版本的不斷升級(jí),現(xiàn)在已經(jīng)成為一個(gè)重要的單片機(jī)開發(fā)平臺(tái)。不過(guò)Keil的界面并不是非常復(fù)雜,操作也不是非常困難,很多工程師開發(fā)的優(yōu)秀程序都是在Keil的平臺(tái)上編寫出來(lái)的??梢哉f(shuō)它在EDA領(lǐng)域是一個(gè)比較重要的軟件。</p>
31、;<p> (1) Keil的uVision2可以進(jìn)行純粹的軟件仿真(仿真軟件程序,不接硬件電路);也可以利用硬件仿真器,搭接上單片機(jī)硬件系統(tǒng),在仿真器中載入項(xiàng)目程序后進(jìn)行實(shí)時(shí)仿真;還可以使用uVision2的內(nèi)嵌模塊Keil Monitor 51,在不需要額外的硬件仿真器的條件下,搭接單片機(jī)硬件系統(tǒng)對(duì)項(xiàng)目程序進(jìn)行實(shí)時(shí)仿真。</p><p> (2)uVision2調(diào)試器具備所有常規(guī)源及調(diào)試,符
32、號(hào)調(diào)試特性以及歷史跟蹤、代碼覆蓋、復(fù)雜斷點(diǎn)等功能。DDE界面和shift語(yǔ)言支持自動(dòng)程序測(cè)試。</p><p> 對(duì)于初次使用 Protues 軟件的人可能還不知道如何設(shè)置,現(xiàn)在把設(shè)置步驟如下:</p><p> (1)把Proteus安裝目錄下VDM51.dll文件復(fù)制到 Keil 安裝目錄的 \C51\BIN 目錄中;</p><p> (2) 編輯C51
33、里 tools.ini 文 件,加 入:TDRV1=BIN\VDM51.DLL("PROTEUS VSM MONITOR-51 DRIVER");</p><p> (3) Keil uVision 里 設(shè) 置:project-->options forproject-->debug tab;</p><p> (4) 選中 use Proteus VS
34、M monitor 51( 如果想用兩臺(tái)電腦仿真,雙擊 setting,輸入 IP 地址 或者 DNS name);</p><p> (5) 載入 Proteus 文件;</p><p> (6) Proteus 里選擇 DEBUG-->use remote debug monitor;</p><p> 進(jìn)入 KEIL 的 project 菜單 op
35、tion for target '工程名'。在 DEBUG 選項(xiàng)中右欄上 部的下拉菜選中Proteus VSMMonitor-51Driver。在進(jìn)入 seting,如果同一臺(tái)機(jī)IP名為127.0.0.1,如不是同一臺(tái)機(jī)則填另一臺(tái)的IP地址。端口號(hào)一定為 8000 注意:可以在一臺(tái)機(jī)器上運(yùn)行 keil,另一臺(tái)中運(yùn)行Proteus 進(jìn)行遠(yuǎn)程仿真;</p><p> (7)打開KEIL uVisio
36、n,按F5開始仿真。</p><p> 3.2proteus 的工作過(guò)程</p><p> 運(yùn)行 Proteus 的 ISIS 程序后,進(jìn)入該仿真軟件的主界面。在工作前,要設(shè)置 view菜單下的捕捉對(duì)齊和system下的顏色、圖形界面大小等項(xiàng)目。通過(guò)工具欄中的 p(從庫(kù)中選擇元件命令)命令,在 pick devices 窗口中選擇電路所需的元件,放置元件并調(diào)整其相對(duì)位置,元件參數(shù)設(shè)置,
37、元器件間連線,編寫程序;在 source 菜單的 Define code generation tools 菜單命令下,選擇程序編譯的工具、路徑、擴(kuò)展名等項(xiàng)目;在 source菜單的 Add/remove source files 命令下,加入單片機(jī)硬件電路的對(duì)應(yīng)程序;通過(guò) debug 菜單的相應(yīng)命令仿真程序和電路的運(yùn)行情況。</p><p> 3.3Proteus 軟件所提供的調(diào)試手段</p>
38、<p> Proteus 提供了比較豐富的測(cè)試信號(hào)用于電路的測(cè)試。這些測(cè)試信號(hào)包括模擬信號(hào)和數(shù)字信號(hào)。</p><p> 對(duì)于單片機(jī)硬件電路和軟件的調(diào)試,Proteus 提供了兩種方法:一種是系統(tǒng)總體執(zhí)行效果,一種是對(duì)軟件的分步調(diào)試以及具體的執(zhí)行情況。</p><p> 對(duì)于總體執(zhí)行效果的調(diào)試方法,只需要執(zhí)行 debug 菜單下的 execute 菜單項(xiàng)或 F12 快捷鍵啟
39、動(dòng)執(zhí)行,用 debug 菜單下的pause animation 菜單項(xiàng)或 pause 鍵暫停系統(tǒng)的運(yùn)行;或用Debug 菜單下的 stop animation 菜單項(xiàng)或 shift-break 組合鍵停止系統(tǒng)的運(yùn)行。其運(yùn)行方式也可以選擇工具欄中的相應(yīng)工具進(jìn)行。</p><p> 對(duì)于軟件的分步調(diào)試,應(yīng)先執(zhí)行 debug 菜單下的start/restart debugging 菜單項(xiàng)命令,此時(shí)可以選擇 stepo
40、ver、step into 和 step out 命令執(zhí)行程序(可以用快捷鍵F10、F11 和 ctrl+F11),執(zhí)行的效果是單句執(zhí)行、進(jìn)入子程序執(zhí)行和跳出子程序執(zhí)行。在執(zhí)行了 start / restart debuging命令后,在 debug 菜單的下面要出現(xiàn)仿真中所涉及到的軟件列表和單片機(jī)的系統(tǒng)資源等,可供調(diào)試時(shí)分析和查看。</p><p> 3.4 Proteus 和 KEIL uVision3 軟
41、件結(jié)合的實(shí)例</p><p> 本節(jié)將通過(guò)一個(gè)流水燈試驗(yàn)具體介紹 Proteus 與 KeiluVision 的結(jié)合與應(yīng)用。</p><p> ?。?)通過(guò) Proteus 畫原理圖:(圖 1)</p><p> 圖1 流水燈試驗(yàn)Proteus 原理圖</p><p> (1)在 Keil uVision 軟件別寫程序:</p&g
42、t;<p> #include<reg51.h></p><p> #include<intrins.h></p><p> void delayms(unsigned char ms)</p><p><b> // 延時(shí)子程序</b></p><p><b>
43、 {</b></p><p> unsigned char i;</p><p> while(ms--)</p><p><b> {</b></p><p> for(i = 0; i < 120; i++);</p><p><b> }</b&g
44、t;</p><p><b> }</b></p><p><b> main()</b></p><p><b> {</b></p><p> unsigned char LED;</p><p> LED = 0xfe;</p>
45、;<p><b> P0 = LED;</b></p><p><b> while(1)</b></p><p><b> {</b></p><p> delayms(250);</p><p> LED = _crol_(LED,1);</p
46、><p> //循環(huán)右移 1 位,點(diǎn)亮下一個(gè) LED</p><p><b> P0 = LED;</b></p><p><b> }</b></p><p><b> }</b></p><p> ?。?)對(duì) Proteus 和 Keil uVi
47、sion 軟件的設(shè)置:</p><p> ?。▍⒖?3.1 Protues 軟件與 Keil uVision 的介紹章節(jié))</p><p> (4)運(yùn)行程序,運(yùn)行結(jié)果如下(圖 2):</p><p><b> 實(shí)現(xiàn)流水燈功能</b></p><p><b> 圖2 仿真效果圖</b></
48、p><p> 4 基于Proteus的51系列單片機(jī)的仿真</p><p> 4.1Proteus對(duì)89C51單片機(jī)的仿真</p><p> 就Atmel公司的系列單片機(jī)而言,Proteus支持的型號(hào)非常全面,從低端ATtiny10到高端的ATmega128均有可以直接調(diào)用的庫(kù)元件。下面以89C51為例介紹Proteus支持的仿真功能。</p>&l
49、t;p> Proteus中的89C51庫(kù)元件管腳上的標(biāo)識(shí)與該芯片的Datasheet是基本一致的,惟一的不同是隱去了GND和VCC管腳,在繪制原理圖的時(shí)候用戶可以不用對(duì)其進(jìn)行連接,系統(tǒng)默認(rèn)的設(shè)置就是將它們分別連到地和5V電源上。[6]對(duì)單片機(jī)系統(tǒng)可進(jìn)行仿真的功能有:支持所有的I/O操作,內(nèi)部的定時(shí)器、計(jì)數(shù)器的模擬(包括輸入捕獲、輸出比較、PWM模式),看門狗定時(shí)器,串行UART接口,主、從模式串行SPI接口,支持內(nèi)置數(shù)模轉(zhuǎn)換AD
50、C,支持Atmel的TWI(Two WireInterface)通信方式,存貯器方面支持外部SRAM擴(kuò)展以及內(nèi)置EEPROM的模擬,支持多個(gè)微控制器的協(xié)同工作仿真等等。</p><p> 仿真時(shí)要做好三步操作:一是系統(tǒng)硬件電路的設(shè)計(jì);二是系統(tǒng)軟件的開發(fā)與編譯;三是系統(tǒng)的綜合仿真。具體流程是:首先利用Proteus繪制系統(tǒng)硬件原理圖;然后利用51系列編譯器(如Keil等)進(jìn)行系統(tǒng)軟件設(shè)計(jì)并生成目標(biāo)代碼(*.hex
51、格式),Keil軟件支持C和匯編兩種語(yǔ)言形式,是目前和Proteus使用較多的配套軟件;在仿真時(shí),只要對(duì)原理圖中的微處理器芯片指定了經(jīng)過(guò)Keil軟件編譯過(guò)的目標(biāo)程序的路徑,就可以進(jìn)行系統(tǒng)的實(shí)時(shí)動(dòng)態(tài)仿真。另一點(diǎn)值得一提的是:實(shí)時(shí)仿真運(yùn)行的過(guò)程中,系統(tǒng)每個(gè)網(wǎng)絡(luò)引腳旁邊均會(huì)出現(xiàn)一個(gè)小正方形的指示,紅色代表高電平,藍(lán)色代表低電平,這樣開發(fā)人員可以不用借助虛擬工具的測(cè)量也能很直觀的看到每個(gè)管腳的電平變化,從而對(duì)系統(tǒng)的軟硬件性能做出最基本的判斷,優(yōu)
52、化了單片機(jī)開發(fā)流程。</p><p> 4.2Proteus在單片機(jī)仿真方面的優(yōu)勢(shì)</p><p> 針對(duì)于51系列單片機(jī)的仿真軟件目前有很多種。常用的有AVR Studio等。AVR Studio和Proteus都屬于代碼級(jí)的仿真軟件,與芯片級(jí)仿真不同,代碼級(jí)仿真完全在計(jì)算機(jī)上完成,不需要硬件的參與,主要用于查看代碼的執(zhí)行過(guò)程和參數(shù)變化。</p><p>
53、AVR Studio是一款完全免費(fèi)的AVR單片機(jī)集成開發(fā)環(huán)境,包括AVR Assembler編譯器和AVR Studio調(diào)試功能,AVR Prog串行、并行下載功能和Jtag ICE仿真功能。它最主要的功能是觀察代碼執(zhí)行過(guò)程中單片機(jī)內(nèi)部各個(gè)寄存器值的變化,[7]尤其是一些寄存器關(guān)鍵位的置位、復(fù)位操作與程序的關(guān)系。利用單步調(diào)試功能可以更細(xì)致地檢查代碼的執(zhí)行過(guò)程。對(duì)于內(nèi)部的定時(shí)中斷也可以較好的仿真,使實(shí)驗(yàn)者清楚了解中斷對(duì)于整個(gè)程序流程的影響
54、。但是對(duì)于外部中斷和輸入捕獲等需要?jiǎng)討B(tài)外設(shè)配合的功能,AVR Studio就顯得無(wú)能為力了。同時(shí)該軟件使用黑色、白色的方塊來(lái)表示1和0,用以反映寄存器值的變化,當(dāng)需要觀察某些波形時(shí),這樣的仿真結(jié)果顯得很不直觀。</p><p> Proteus軟件具有強(qiáng)大的多窗口、多文件的編輯器、微控制器的集成開發(fā)環(huán)境、一系列的集成開發(fā)工具、圖形界面調(diào)試器、混合模式的模擬及數(shù)字電路仿真器、代碼質(zhì)量檢查器等。硬件和應(yīng)用軟件能進(jìn)行
55、并發(fā)仿真。最主要的一點(diǎn)是它能以單片機(jī)為核心仿真出包括模擬元器件在內(nèi)的一些動(dòng)態(tài)外設(shè)(按鍵,LED,液晶顯示器等),具有圖形顯示和波形顯示的功能。因此,Proteus不僅僅是一個(gè)微處理器的仿真軟件,它所支持的大量常用芯片模型為單片機(jī)和其他芯片協(xié)同仿真復(fù)雜的完整系統(tǒng)提供了極大的方便。Proteus在完整的系統(tǒng)仿真方面是其他單片機(jī)仿真軟件所不能獨(dú)立完成的。這時(shí),Proteus為我們提供的不僅僅是一個(gè)單片機(jī)的仿真環(huán)境,稱其為一個(gè)虛擬的單片機(jī)實(shí)驗(yàn)室
56、是完全合適的,只要我們能充分的利用Proteus提供的實(shí)驗(yàn)器件就可以完成一個(gè)具有相當(dāng)集成性的單片機(jī)系統(tǒng)。</p><p> 下面通過(guò)使用Proteus軟件仿真51系列單片機(jī)控制LED的實(shí)例來(lái)說(shuō)明該工具的使用方法。本實(shí)例的主要內(nèi)容為:用AT89C51作為主控芯片來(lái)控制8個(gè)LED的亮滅,亮滅的方式通過(guò)改變程序完成(如可讓8個(gè)燈依次循環(huán)亮滅或先亮四個(gè),延遲一段時(shí)間后,先亮的熄滅,再讓剩余的四個(gè)燈亮等方式),可通過(guò)Pr
57、oteus仿真的結(jié)果來(lái)調(diào)試軟硬件;74LS04用來(lái)提高輸出的驅(qū)動(dòng)能力,電阻起到限流的作用。</p><p><b> 仿真過(guò)程如下:</b></p><p> 第一步:打開Proteus 6 Professional (運(yùn)行ISIS 6Professional),繪圖界面如圖3所示。</p><p> 圖3 Proteus ISIS 6
58、Professional的繪圖界面</p><p> 第二步:添加所需元件并連接電路圖。本實(shí)例所需要元件為:AT89C51、74LS04、電阻、“地”,所畫電路如圖4所示。</p><p> 圖4 AT89C51控制的8路LED原理圖</p><p> 第三步:添加仿真文件。先右鍵單擊AT89C51,再左鍵單擊,在彈出的Edit Component對(duì)話框中的P
59、rogramFile一欄選擇仿真文件。本實(shí)例的仿真文件為由Keil uVision2編譯源文件Led.C而產(chǎn)生的仿真文件Led.hex。Clock Frequency一欄設(shè)置頻率為12MHZ。添加結(jié)果如圖5所示。</p><p> 第四步:?jiǎn)螕?圖標(biāo)開始仿真。此時(shí)8個(gè)LED開始亮滅,根據(jù)亮滅的狀態(tài)進(jìn)行源代碼的調(diào)試。</p><p> 圖5 仿真文件的添加與設(shè)置</p>&
60、lt;p><b> 4.3單片機(jī)的仿真</b></p><p> Proteus可以仿真很多常用的微處理器。具體來(lái)講,他支持PIC,8051,AVR,HC11,ARM7/LPC2000等系列多種型號(hào)的微處理器、微控制器,仿真時(shí)只需在設(shè)定元件屬性時(shí)指定下載程序的路徑即可進(jìn)行實(shí)時(shí)動(dòng)態(tài)仿真。下面舉例具體介紹Proteus在單片機(jī)仿真中的應(yīng)用。</p><p>
61、4.3.1電子鬧鐘的系統(tǒng)設(shè)計(jì)</p><p> 用七段數(shù)碼管顯示時(shí)間,通過(guò)按鍵可以設(shè)置時(shí)間及鬧鈴時(shí)間,若到設(shè)定的時(shí)間則蜂鳴器發(fā)出一陣聲響。程序執(zhí)行后工作指示燈LED亮,表示程序開始執(zhí)行。操作鍵K1~K5動(dòng)作如下:K1:進(jìn)入設(shè)置現(xiàn)在的時(shí)間;K2:設(shè)置小時(shí)(設(shè)置鬧鈴小時(shí));K3:設(shè)置分鐘(設(shè)置鬧鈴分鐘);K4:進(jìn)入設(shè)置鬧鈴時(shí)間;K5:鬧鈴ON/OFF設(shè)置。為ON時(shí)蜂鳴器連續(xù)3次發(fā)出聲響,設(shè)為OFF時(shí)發(fā)出一次聲響。&
62、lt;/p><p> 4.3.2硬件系統(tǒng)的仿真</p><p> Proteus既可以仿真單片機(jī)CPU的工作情況,也能仿真單片機(jī)外圍電路或沒(méi)有單片機(jī)參與的其他電路的工作情況。因此在仿真和程序調(diào)試時(shí),可以直接看程序運(yùn)行和電路工作的過(guò)程和結(jié)果。</p><p> 首先運(yùn)行Proteus軟件,建立一個(gè)新文件,從右上角pick devices窗口中選擇電路所需的元件。電子
63、鬧鐘所用到的元器件主要有:1個(gè)AT89C51單片機(jī),1個(gè)四位七段譯碼顯示器,3個(gè)LED指示燈,2個(gè)按鍵,3個(gè)開關(guān)和1個(gè)蜂鳴器。其所在的元件庫(kù)如表1所示。Microprocessor ICs元件庫(kù)中的微處理器,其管腳上的標(biāo)識(shí)與該芯片的Datasheet是基本一致的,惟一的不同是隱去了GND和VCC管腳,在繪制原理圖的時(shí)候可以不用對(duì)其進(jìn)行連接,系統(tǒng)默認(rèn)的設(shè)置就是將他們分別連到地和5 V電源上。單片機(jī)的硬件資源幾乎都可仿真,例如:支持所有的I
64、/O操作,內(nèi)部的定時(shí)器、計(jì)數(shù)器的模擬(包括輸入捕獲、輸出比較、PWM模式),看門狗定時(shí)器,串行UART接口,支持內(nèi)置數(shù)模轉(zhuǎn)換ADC。其他外圍元件也可在庫(kù)中找到,其連線方法和Protel連接方法基本一樣。[8]</p><p> 在Proteus中繪制硬件原理圖,如圖6所示。</p><p> 圖6 電子時(shí)鐘硬件仿真圖</p><p> 下面具體介紹仿真過(guò)程:&
65、lt;/p><p> 首先把源文件在WAVE編譯環(huán)境下生成可執(zhí)行文件(*.hex格式),路徑指定給原理圖中的芯片,就可以觀察程序的運(yùn)行。另外,值得一提的是,實(shí)時(shí)仿真運(yùn)行的過(guò)程中,每個(gè)管腳的旁邊會(huì)出現(xiàn)一個(gè)小正方形的指示,紅色代表高電平,藍(lán)色帶表低電平,從這個(gè)小正方形可以不用虛擬工具的測(cè)量很直觀的看到每個(gè)管腳的電平變化,對(duì)程序的運(yùn)行做出最基本的判斷,對(duì)于簡(jiǎn)單的分析可以節(jié)省很多的時(shí)間。本例中操作鍵K1~K5可以設(shè)置鬧鈴和
66、調(diào)節(jié)時(shí)間,D1,D2,D3分別為工作指示燈。經(jīng)過(guò)實(shí)際操作功能鍵,觀察LED燈顯示,達(dá)到了預(yù)先設(shè)計(jì)的要求。</p><p><b> 4.4實(shí)驗(yàn)結(jié)果</b></p><p> 在此仿真基礎(chǔ)上,用Protel畫原理圖,制成PCB板,測(cè)試其性能。其結(jié)果與仿真基本一樣。但是,在Proteus仿真原理圖實(shí)際應(yīng)用中,有一些差別,例如:電阻的選取與仿真圖有些差異,有時(shí)單片機(jī)的時(shí)
67、鐘與實(shí)際不相符,LED顯示接口在實(shí)際設(shè)計(jì)中要加上拉或下拉電阻。在今后實(shí)際的畫板中,只要對(duì)仿真電路稍加改動(dòng)即可。</p><p><b> 5.結(jié)語(yǔ)</b></p><p> 利用Proteus與Keil整合進(jìn)行實(shí)驗(yàn),具有比較明顯的優(yōu)勢(shì),不僅可以彌補(bǔ)實(shí)驗(yàn)儀器和元器件缺乏帶來(lái)的不足,而且排除了原材料消耗和儀器損壞等因素,可以幫助初學(xué)者更快、更好地掌握課本的理論內(nèi)容,加
68、深對(duì)概念、原理的理解,彌補(bǔ)理論學(xué)習(xí)的不足。通過(guò)仿真實(shí)驗(yàn),可以熟悉單片機(jī)系統(tǒng)的開發(fā)方法,這對(duì)進(jìn)一步培養(yǎng)綜合分析能力、排除故障能力和開發(fā)、創(chuàng)新能力具有重要意義。</p><p><b> 參考文獻(xiàn)</b></p><p> [1] 楊西明,朱騏.單片機(jī)編程與應(yīng)用入門[M],北京:機(jī)械工業(yè)出版社,2004.97-125</p><p> [2]
69、 張洪潤(rùn),張亞凡.單片機(jī)原理及應(yīng)用[M],北京:清華大學(xué)出版社,2005.180-203</p><p> [3] 龍澤明,顧立志.MCS-51單片機(jī)原理及工程應(yīng)用[M],北京:國(guó)防工業(yè)大學(xué)出版,2005.55-83</p><p> [4] 馮建華,趙亮.單片機(jī)應(yīng)用系統(tǒng)設(shè)計(jì)與產(chǎn)品開發(fā)[M],北京:人民郵電出版社,2004.81-132</p><p> [5
70、] 徐愛華,單片機(jī)應(yīng)用技術(shù)教程[M],北京:機(jī)械工業(yè)出版社,2003.150-186</p><p> [6] 馬忠梅,單片機(jī)的C語(yǔ)言應(yīng)用程序設(shè)計(jì)[M],北京:北京航空航天出版社,2003.66-95</p><p> [7] 雷思孝,馮育長(zhǎng).單片機(jī)系統(tǒng)設(shè)計(jì)及工程應(yīng)用[M],西安:西安電子科技大學(xué)出版社,2005.59-94</p><p> [8] 沈紅衛(wèi),
71、單片機(jī)應(yīng)用系統(tǒng)設(shè)計(jì)實(shí)例與分析[M].北京:北京航空航天大學(xué)出版社,2003.40-85</p><p><b> 致 謝</b></p><p> 本文的完成首先應(yīng)該感謝培養(yǎng)我的XX大學(xué)XX工程學(xué)院,是XX工程學(xué)院各位老師的諄諄教導(dǎo),使我掌握了單片機(jī)的基本知識(shí),從而有機(jī)會(huì)有可能完成這篇論文。</p><p> 還感謝XX工程學(xué)院的XX老
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 眾賞文庫(kù)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 51單片機(jī)仿真系統(tǒng)的cai制作畢業(yè)設(shè)計(jì)
- 單片機(jī)測(cè)溫系統(tǒng)畢業(yè)設(shè)計(jì)
- 單片機(jī)畢業(yè)設(shè)計(jì)
- 單片機(jī)畢業(yè)設(shè)計(jì)
- 畢業(yè)設(shè)計(jì)-單片機(jī)
- 單片機(jī)畢業(yè)設(shè)計(jì)--基于單片機(jī)的恒壓供水系統(tǒng)設(shè)計(jì)
- 單片機(jī)數(shù)字測(cè)溫系統(tǒng)畢業(yè)設(shè)計(jì)
- 單片機(jī)紅外遙控系統(tǒng)畢業(yè)設(shè)計(jì)
- 單片機(jī)紅外遙控系統(tǒng)設(shè)計(jì)畢業(yè)設(shè)計(jì)
- 畢業(yè)設(shè)計(jì)---基于單片機(jī)的計(jì)價(jià)系統(tǒng)
- 畢業(yè)設(shè)計(jì)--基于單片機(jī)的門禁系統(tǒng)設(shè)計(jì)
- 基于單片機(jī)的門禁系統(tǒng)設(shè)計(jì)畢業(yè)設(shè)計(jì)
- 單片機(jī)溫控畢業(yè)設(shè)計(jì)
- 單片機(jī)畢業(yè)設(shè)計(jì)---基于pic單片機(jī)的多路溫度巡回檢測(cè)系統(tǒng)
- 【畢業(yè)設(shè)計(jì)】基于單片機(jī)測(cè)溫系統(tǒng)設(shè)計(jì)
- 【畢業(yè)設(shè)計(jì)】基于單片機(jī)測(cè)溫系統(tǒng)設(shè)計(jì)
- 單片機(jī)畢業(yè)設(shè)計(jì)--單片機(jī)控制的led點(diǎn)陣顯示
- 單片機(jī)畢業(yè)設(shè)計(jì)--基于單片機(jī)的電子時(shí)鐘
- 單片機(jī)畢業(yè)設(shè)計(jì)英文翻譯--單片機(jī)的組成
- 單片機(jī)畢業(yè)設(shè)計(jì)板
評(píng)論
0/150
提交評(píng)論