機(jī)電之家資源網(wǎng)
單片機(jī)首頁(yè)|單片機(jī)基礎(chǔ)|單片機(jī)應(yīng)用|單片機(jī)開發(fā)|單片機(jī)文案|軟件資料下載|音響制作|電路圖下載 |嵌入式開發(fā)
培訓(xùn)信息
贊助商
Proteus 仿真軟件在單片機(jī)設(shè)計(jì)中的應(yīng)用
Proteus 仿真軟件在單片機(jī)設(shè)計(jì)中的應(yīng)用
 更新時(shí)間:2009-11-28 11:23:02  點(diǎn)擊數(shù):0
【字體: 字體顏色

1.引言
  單片機(jī)在很多產(chǎn)品中得到廣泛的應(yīng)用,無論是51 系列、AVR、還是PIC 系列,他們各有各的特點(diǎn),學(xué)習(xí)者也是逐年增加,但是在學(xué)習(xí)開發(fā)過程中,我們往往在確定方案后做試驗(yàn)的開支往往比較大,尤其是對(duì)于一些學(xué)生或者初學(xué)者這就可能成為他們學(xué)習(xí)的障礙。在我們使用Proteus 軟件以來大大節(jié)省了時(shí)間和開發(fā)費(fèi)。尤其將此軟件用在單片機(jī)開發(fā)中是一個(gè)不錯(cuò)的選擇。我們這里主要講述的是Proteus 軟件與Keil 軟件的結(jié)合與應(yīng)用。

  2.Protues 軟件介紹與應(yīng)用

  2.1 Protues 軟件介紹

  Proteus 是目前最好的模擬單片機(jī)外圍器件的工具,它可以仿真51 系列、AVR,PIC 等常用的MCU 及其外圍電路(如LCD,RAM,ROM,鍵盤,馬達(dá),LED,AD/DA,部分SPI 器件,部分IIC 器件...)。本文章基于ProteusPRO6.7SP3和KEIL uVision3 軟件。當(dāng)然,軟件仿真精度有限,而且不可能所有的器件都找得到相應(yīng)的仿真模型,用開發(fā)板和仿真器當(dāng)然是最好選擇,可是對(duì)于單片機(jī)愛好者,或者簡(jiǎn)單的開發(fā)應(yīng)該是比較好的選擇。Proteus 與其它單片機(jī)仿真軟件不同的是,它不僅能仿真單片機(jī)CPU 的工作情況,也能仿真單片機(jī)外圍電路或沒有單片機(jī)參與的其它電路的工作情況。因此在仿真和程序調(diào)試時(shí),關(guān)心的不再是某些語(yǔ)句執(zhí)行時(shí)單片機(jī)寄存器和存儲(chǔ)器內(nèi)容的改變,而是從工程的角度直接看程序運(yùn)行和電路工作的過程和結(jié)果。對(duì)于這樣的仿真實(shí)驗(yàn),從某種意義上講,是彌補(bǔ)了實(shí)驗(yàn)和工程應(yīng)用間脫節(jié)的矛盾和現(xiàn)象。

  2.2 Protues 軟件與Keil uVision 的結(jié)合

  對(duì)于初次使用Protues 軟件的人可能還不知道如何設(shè)置,現(xiàn)在把設(shè)置步驟簡(jiǎn)介如下,僅供參考(本文章只討論在單機(jī)上結(jié)合,在兩個(gè)聯(lián)網(wǎng)機(jī)器使用由于篇幅限制不在此討論):設(shè)置步驟如下:

  (1) 把proteus 安裝目錄下 VDM51.dll ( C:\ProgramFiles\LabcenterElectronics\Proteus6\Professional\MODELS)文件復(fù)制到 Keil 安裝目錄的 \C51\BIN 目錄中;(2) 編輯C51 里tools.ini 文件, 加入:TDRV1=BIN\VDM51.DLL("PROTEUS VSM MONITOR-51 DRIVER");(3)Keil uVision 里設(shè)置: project-->options forproject-->debug tab;(4) 選中use proteus VSM monitor 51( 如果想用兩臺(tái)電腦仿真,雙擊setting,輸入IP 地址 或者DNS name);(5) 載入proteus 文件;(6)proteus 里選擇DEBUG-->use remote debug monitor;進(jìn)入KEIL 的project 菜單option for target '工程名'。在DEBUG 選項(xiàng)中右欄上部的下拉菜選中 Proteus VSMMonitor-51 Driver。 在進(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)程仿真.(7)打開KEIL uVision, 按F5 開始仿真.

  2.3 proteus 的工作過程

  運(yùn)行proteus 的ISIS 程序后,進(jìn)入該仿真軟件的主界面。在工作前,要設(shè)置view 菜單下的捕捉對(duì)齊和system 下的顏色、圖形界面大小等項(xiàng)目。通過工具欄中的p(從庫(kù)中選擇元件命令)命令,在pick devices 窗口中選擇電路所需的元件,放置元件并調(diào)整其相對(duì)位置,元件參數(shù)設(shè)置,元器件間連線,編寫程序;在source 菜單的Define code generation tools 菜單命令下,選擇程序編譯的工具、路徑、擴(kuò)展名等項(xiàng)目;在source菜單的Add/remove source files 命令下,加入單片機(jī)硬件電路的對(duì)應(yīng)程序;通過debug 菜單的相應(yīng)命令仿真程序和電路的運(yùn)行情況。Proteus 軟件所提供了30 多個(gè)元件庫(kù),數(shù)千種元件。元件涉及到數(shù)字和模擬、交流和直流等。

  2.4 Proteus 軟件所提供的調(diào)試手段

  Proteus 提供了比較豐富的測(cè)試信號(hào)用于電路的測(cè)試。這些測(cè)試信號(hào)包括模擬信號(hào)和數(shù)字信號(hào)。對(duì)于單片機(jī)硬件電路和軟件的調(diào)試,Proteus 提供了兩種方法:一種是系統(tǒng)總體執(zhí)行效果,一種是對(duì)軟件的分步調(diào) 試以看具體的執(zhí)行情況。對(duì)于總體執(zhí)行效果的調(diào)試方法,只需要執(zhí)行debug 菜單下的execute 菜單項(xiàng)或F12 快捷鍵啟動(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)行。對(duì)于軟件的分步調(diào)試, 應(yīng)先執(zhí)行debug 菜單下的start/restart debugging 菜單項(xiàng)命令,此時(shí)可以選擇stepover 、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í)分析和查看。

  2.5 Proteus 和KEIL uVision3 軟件結(jié)合實(shí)例

  (1)通過Proteus 畫原理圖:(圖1)

  

 (2)在K

  eil uVision 軟件別寫程序:

  #i nclude

  #i nclude

  void delayms(unsigned char ms)// 延時(shí)子程序

  {unsigned char i;

  while(ms--)

  {for(i = 0; i < 120; i++);}

  }

  main()

  {unsigned char LED;

  LED = 0xfe;

  P0 = LED;

  while(1)

  {delayms(250);

  LED = _crol_(LED,1);//循環(huán)右移1 位,點(diǎn)亮下一個(gè)LED

  P0 = LED;

  }  }

  (3)對(duì)Proteus 和Keil uVision 軟件的設(shè)置:(參考2.2 Protues 軟件與Keil uVision 的結(jié)合章節(jié))(4)運(yùn)行程序,運(yùn)行結(jié)果如下(圖2):實(shí)現(xiàn)流水燈功能

  


  3.總結(jié)

  Proteus 不僅可以作為學(xué)校單片機(jī)(電子等)實(shí)驗(yàn)的模擬仿真,也可以作為個(gè)人工作室的仿真實(shí)驗(yàn)。作為電子技術(shù)或控制類相關(guān)專業(yè)的學(xué)生和工程技術(shù)人員,在學(xué)習(xí)了該軟件后,可以充分地利用它所提供的資源,幫助自己提高工程應(yīng)用能力。在教學(xué)中利用該軟件,除了能教單片機(jī)的具體課程內(nèi)容外,還可以教會(huì)學(xué)生應(yīng)用該工具的能力,為今后的工作打下基礎(chǔ)。歡迎大家對(duì)本文章提出意見,如有問題請(qǐng)咨詢我們。

  • 上一篇: 基于單片機(jī)和GPS的時(shí)鐘信息顯示系統(tǒng)探討
  • 下一篇: 沒有了
  • 發(fā)表評(píng)論   告訴好友   打印此文  收藏此頁(yè)  關(guān)閉窗口  返回頂部
    熱點(diǎn)文章
     
    推薦文章
     
    相關(guān)文章
    網(wǎng)友評(píng)論:(只顯示最新5條。)
    關(guān)于我們 | 聯(lián)系我們 | 廣告合作 | 付款方式 | 使用幫助 | 機(jī)電之家 | 會(huì)員助手 | 免費(fèi)鏈接

    點(diǎn)擊這里給我發(fā)消息66821730(技術(shù)支持)點(diǎn)擊這里給我發(fā)消息66821730(廣告投放) 點(diǎn)擊這里給我發(fā)消息41031197(編輯) 點(diǎn)擊這里給我發(fā)消息58733127(審核)
    本站提供的機(jī)電設(shè)備,機(jī)電供求等信息由機(jī)電企業(yè)自行提供,該企業(yè)負(fù)責(zé)信息內(nèi)容的真實(shí)性、準(zhǔn)確性和合法性。
    機(jī)電之家對(duì)此不承擔(dān)任何保證責(zé)任,有侵犯您利益的地方請(qǐng)聯(lián)系機(jī)電之家,機(jī)電之家將及時(shí)作出處理。
    Copyright 2007 機(jī)電之家 Inc All Rights Reserved.機(jī)電之家-由機(jī)電一體化網(wǎng)更名-聲明
    電話:0571-87774297 傳真:0571-87774298
    杭州濱興科技有限公司提供技術(shù)支持

    主辦:杭州市高新區(qū)(濱江)機(jī)電一體化學(xué)會(huì)
    中國(guó)行業(yè)電子商務(wù)100強(qiáng)網(wǎng)站

    網(wǎng)站經(jīng)營(yíng)許可證:浙B2-20080178-1