單片機的Proteus虛擬仿真
張維久 胡漢春 李沖(西南交通大學(xué)機械工程學(xué)院 610031成都)
摘要:單片機體積小,重量輕,價(jià)格便宜,具有很大的發(fā)展前途。傳統的單片機開(kāi)發(fā)硬件成本高,開(kāi)發(fā)周期長(cháng)。隨著(zhù)計算機技術(shù)的進(jìn)步,基于EDA技術(shù)的Proteus能很好解決這個(gè)問(wèn)題。本文通過(guò)一個(gè)簡(jiǎn)單的數據采集系統,詳細說(shuō)明Proteus在單片機開(kāi)發(fā)中的應用。
關(guān)鍵詞:單片機;Proteus;虛擬仿真
The Virtual Emulation of MCU Base On Proteus
Zhang Wei-jiu Hu Han-chun Li Chong
(School of MechanicalEngineering,Southwest Jiaotong University,Chengdu)
Abstract: MCU is small,light and has a low price,So it is very potential.Usua-
lly,develop an MCU systym is expensive and take a long time.With the development of computer technology,The Proteus based on EDA technique can solve the problem perfect.This paper show Proteus’s applicationby a simple data acquisition system.
Key words: MCU;Proteus;virtual emulation
1.引言
單片機體積小,重量輕,具有很強的靈活性而且價(jià)格便宜,具有邏輯判斷,定時(shí)計數等多種功能,廣泛應用于儀器儀表,家用電器,醫用設備的智能化管理和過(guò)程控制等領(lǐng)域。以單片機為核心的嵌入式系統已經(jīng)成為目前電子設計最活躍的領(lǐng)域之一。在嵌入式系統的中,開(kāi)發(fā)板成本高,特別是對于大量的初學(xué)者而言,還可能由于設計的錯誤導致開(kāi)發(fā)板損壞。利用Proteus我們可以很好地解決這個(gè)問(wèn)題,由此我們可以快速地建立一個(gè)仿真系統。
2.Proteus介紹
Proteus是英國Labcenter Electro-nics公司開(kāi)發(fā)的一款電路仿真軟件,軟件由兩部分組成:一部分是智能原理圖輸入系統ISIS(Intelligent Schematic Input System)和虛擬系統模型VSM(Virtual Model System);另一部分是高級布線(xiàn)及編輯軟件ARES(Adv-
Ancd Routing and Editing Software)也就是PCB.
2.1 Proteus VSM的仿真
Proteus可以仿真模擬電路及數字電路,也可以仿真模擬數字混合電路。Proteus可提供30多種元件庫,超過(guò)8000種模擬、數字元器件??梢园凑赵O計的要求選擇不同生產(chǎn)廠(chǎng)家的元器件。此外,對于元器件庫中沒(méi)有的元件,設計者也可以通過(guò)軟件自己創(chuàng )建。
除擁有豐富的元器件外,Proteus還提供了各種虛擬儀器,如常用的電流表,電壓表,示波器,計數/定時(shí)/頻率計,SPI調試器等虛擬終端。支持圖形化的分析功能等。
Proteus特別適合對嵌入式系統進(jìn)行軟硬件協(xié)同設計與仿真,其最大的特點(diǎn)是可以仿真8051,PIA,AVR,ARM等多種系列的處理器。Protues包含強大的調試工具,具有對寄存器和存儲器、斷點(diǎn)和單步模式IAR C-SPY,Keil、MPLAB等開(kāi)發(fā)工具的源程序進(jìn)行調試的功能;能夠觀(guān)察代碼在仿真硬件上的實(shí)時(shí)運行效果;對顯示,按鈕,鍵盤(pán)等外設的交互可視化進(jìn)行仿真。
2.2 Proteus PCB
Proteus 的PCB設計除了有自動(dòng)布線(xiàn)仿真功能外,還集成了PCB設計,支持多達16個(gè)布線(xiàn)層,可以任意角度放置元件和焊接連線(xiàn);集成了高智能的布線(xiàn)算法,可以方便地進(jìn)行PCB設計。
3. 基于Protesus的簡(jiǎn)單數據采集系統。
3.1 軟件的編寫(xiě)
本例題采用可調電阻調節電壓值作為模擬信號的輸入量,通過(guò)A/D轉換芯片AD0808把模擬信號轉換為數字量傳送到單片機的P1口,并在P0口把轉換的結果顯示出來(lái)。
軟件的編寫(xiě)可以在Keil C51 環(huán)境下進(jìn)行,芯片的型號選擇AT89C51,編寫(xiě)data.c文件,利用Keil C51進(jìn)行編譯,編譯成功后生成data.hex文件。
3.2 繪制電路圖
運行Proteus的ISIS,進(jìn)入仿真軟件的主界面,如圖1所示。主界面分為菜單欄,工具欄,模型顯示窗口,模型選擇區,元件列表區等。
圖1 ISIS啟動(dòng)界面
{{分頁(yè)}}
通過(guò)左側的工具欄區的P(從庫中選擇元件)命令,在Pick devices窗口中選擇系統所需元器件,還可以選擇元件的類(lèi)別,生產(chǎn)廠(chǎng)家等。本例所需主要元器件有:AT89C51芯片,ADC0808芯片,一個(gè)四位七段數碼顯示器,一個(gè)可變電阻,詳見(jiàn)表1。
表1 元器件清單
選擇元器件后連接圖2所示電路。
圖2 電路原理圖
Microproccessor ICs類(lèi)的芯片的引腳與實(shí)際的芯片基本相同, 唯一的差別是隱去了GND和VCC引腳,系統默認的是把它們分別連接到地和+5V直流電源。故在電路連線(xiàn)時(shí)可以不考慮電源和地的連接。為了快速進(jìn)行仿真,系統所需的時(shí)鐘電路,復位電路可以省略。
電路連接完成后,選中AT89C51單擊鼠標左鍵,打開(kāi)“Edit Component”對話(huà)窗口如圖3所示,可以直接在“Clock Frequency”后進(jìn)行頻率設定,設定單片機的時(shí)鐘頻率為12MHz。在“Program File”欄中選擇已經(jīng)生成的data.hex文件,把在Keil編寫(xiě)的程序導入Proteus,然后單擊“OK”按鈕保存設計。至此,就可以進(jìn)行單片機的仿真。
圖 3 單片機屬性的設定
3.3 Proteus仿真結果
單片機的仿真結果圖如圖4,模擬信號經(jīng)A/D轉換后,結果送入單片機,再在數碼管上顯示;通過(guò)調節可調電阻的阻值,可以得到不同的顯示結果。仿真結果表明,系統達到了預先的設計要求。
在仿真的過(guò)程中每個(gè)管腳旁邊會(huì )出現一個(gè)小方塊,紅色的方快表示高電平,藍色的表示低電平。 通過(guò)方快顏色的變化可以很方便地知道每個(gè)管腳電平的變化,從而能對系統的運行有更直觀(guān)的了解,這對程序的調試有很大的幫助。
圖4 仿真結果
4.結束語(yǔ)
本文結合一個(gè)簡(jiǎn)單的數據采集系統詳細說(shuō)明了Proteus在單片機開(kāi)發(fā)中的應用??梢钥闯?,Proteus功能十分強大,能仿真各種數字模擬電路,且操作簡(jiǎn)單,使用方便。能快速地進(jìn)行單片機仿真,加快系統開(kāi)發(fā)的過(guò)程,降低開(kāi)發(fā)成本。
參考文獻:
[1].張齊,杜群貴.單片機應用系統設計技術(shù)——基于C語(yǔ)言編程。[M].北京:電子工業(yè)出版社,2004。
[2]. 林志琦,郎建軍等.基于Proteus的單片機可視化軟硬件仿真。[M].北京:北京航空航天大學(xué)出版社,2006
作者簡(jiǎn)介:
張維久,男,1983年6月,西南交通大學(xué)機械工程學(xué)院機械電子工程專(zhuān)業(yè)碩士研究生,研究方向:機電設備微機數字控制與仿真。四川省成都市西南交通大學(xué)256信箱;郵編:610031;張維久。
評論