• <li id="00i08"><input id="00i08"></input></li>
  • <sup id="00i08"><tbody id="00i08"></tbody></sup>
    <abbr id="00i08"></abbr>
  • 新聞中心

    EEPW首頁 > 嵌入式系統 > 設計應用 > 一種51單片機虛擬實驗室的建立方法

    一種51單片機虛擬實驗室的建立方法

    作者: 時間:2011-12-12 來源:網絡 收藏

    4.1 Proteus和Keil的聯合調試
    使用Proteus和Keil的聯合調試,在原理圖的設計階段就可以對設計進行評估,驗證所設計電路的軟硬件是否達到設計要求的技術指標;還可以通過改變元器件參數使整個電路性能達到最優化,以節省設計時間與經費,提高設計效率與質量。
    Proteus可以和Keil聯調設置步驟如下:
    (1)復制安裝目錄Proteus\MODELS下的VDM51.dll文件到Keil安裝目錄的\C51\BIN目錄中。
    (2)修改Keil安裝目錄下Tools.ini文件,在C51字段加入TDRV5=BIN\VDM51.DLL("PROTEUS 6EMULATOR")并保存。在這里,不一定要用TDRV5,根據原來字段選用一個不重復的數值就可以了。引號內的名字隨意。
    (3)打開Proteus,畫出相應電路,在Proteus的“Debug”菜單中選中“Use Remote Debug Monitor”。
    (4)進入Keil的Project菜單Option for Target“工程名”,在Debug選項中右欄上部的下拉菜單選中Proteus Driver,再進入Settings,PC的IP設為127.0.0.1,端口號為8000。
    (5)在Keil中進行debug,同時在Proteus中查看直觀的結果。
    通過這樣的設置,就可以像使用仿真器一樣調試程序。
    4.2 使用虛擬串口建立上位機和下位機的通信
    PC上位機與下位機的聯系,傳統上是通過物理接口如串并口等完成。中,由于下位機在PC中用軟件模擬實現,上位機與下位機的聯系與傳統有所區別。這里使用虛擬串口軟件Virtual Serial Ports Driver XP 5.1,其目的是用軟件虛擬出VB上位機和Proteus中建立的單片機系統完成通信的串口。值得注意的是,這種通信只能在兩個虛擬串口之間進行,該例子中,上位機和單片機系統各使用一個虛擬串口,從而實現通信。
    Virtual Serial Ports Driver XP 5.1界面如圖6所示,左側Physical ports代表PC機物理串口。該例子所用計算機為COM1和COM2,點擊Add/Removeports中Add pair左邊First,Second下拉框,分別選中COM3,COM4;然后點擊Add pair按鈕,就加入了虛擬串口COM3,COM4,如圖左側Virtual ports所示。這樣,上位機VB程序以及Proteus中的單片機系統就可以像使用物理串口一樣使用虛擬串口COM3,COM4。如前文所述, Proteus中的COMPIM元件使用虛擬串口COM4,VB中使用虛擬串口COM3。完成這些步驟,就能使用虛擬出的串口COM3,COM4。

    5 上下位機聯合調試及結果
    以上步驟完成之后,啟動仿真就可以實現上、下位機的聯合調試。運行虛擬串口軟件 (vspdXP 5.1)點擊Proteus中的運行按鈕,選中或取消選中VB界面中代表LED的checkbox,然后點擊發送按鈕,Proteus界面中對應的LED 小燈便實現亮滅。運行效果如圖7所示。通過觀察,該方法建立的其功能得以實現。

    6 結 語
    在此通過一個簡單實例詳細介紹一種的建立方法,可以看出使用純軟件的方法代替傳統單片機開發硬件或軟硬結合的調試方法,使得單片機實驗室的建立僅依賴一臺電腦和若干的軟件,實現了包括上位機在內的單片機系統的調試仿真。具有直觀、節省成本,與實際最為接近等特點。為個人單片機的學習提供了經濟、高效的實現方案,同時,使得軟、硬件配置更加靈活,縮短了開發周期,節省了開發成本,避免了制版焊接等過程中的不確定因素,為單片機項目的開發提供了新的方法。

    晶振相關文章:晶振原理

    上一頁 1 2 3 下一頁

    評論


    相關推薦

    技術專區

    關閉
    主站蜘蛛池模板: 和平区| 安义县| 宜宾市| 民勤县| 石家庄市| 龙泉市| 会同县| 淅川县| 牟定县| 玛多县| 紫阳县| 浠水县| 巩义市| 同江市| 石棉县| 桓台县| 新丰县| 河东区| 虎林市| 梅河口市| 尉犁县| 泽库县| 无极县| 贡山| 元阳县| 珠海市| 韶关市| 沂水县| 宜黄县| 汉沽区| 阳朔县| 桐城市| 虎林市| 瑞昌市| 永仁县| 阿克陶县| 瑞丽市| 旺苍县| 车险| 筠连县| 花莲县|