Keil Monitor-51仿真板的製作與使用

2021-01-20 電子產品世界

MCS -51單片機在我國應用最為廣泛、經久不衰。以往單片機應用程式主要用彙編語言編寫。由於彙編語言程序的可讀性和可移植性都較差,採用彙編語言編寫單片機應用程式不但周期長,而且調試和排錯也比較困難。為了提高編制單片機應用程式的效率,改善程序的可讀性可移植性,採用高級語言無疑是一種最好的選擇。C語言是一種通用的電腦程式設計語言,既具有一般高級語言的特點,又能直接對計算機的硬體進行操作,表達和運算能力也較強,許多以往只能採用彙編語言來解決的問題現在都可以改用C語言解決。德國Keil Software公司多年來致力於單片機C語言編譯器的研究。該公司開發的Keil C51是一種專為8051單片機設計的高效率C語言編譯器,符合ANSI標準,生成的程序代碼運行速度極高,所需要的存儲空間極小,完全可以與彙編語言相比美。

本文引用地址:http://www.eepw.com.cn/article/171836.htm

近年來,Keil C51不斷升級,目前最高版本為V6.20。高版本的Keil C51編譯器,尤其是Keil μVision2(基於Windows的C51集成編譯環境)以其性能優越、使用方便,受到了眾多單片機愛好者的歡迎。Keil C51以軟體包的形式向用戶提供主要包括C51交叉編譯器、A51宏彙編器、BL連接定位器等一系列工具和μVision2、軟體仿真器dScope51等開發平臺。C51具有豐富的函數庫,包含100多種功能函數,為用戶編程提供了極大的方便。C51程序可實現與彙編語言的接口,兩者相互之間的調用十分方便。

但目前支持高版本Keil C51編程的仿真器不多,且價格較高。為此Keil C51提供了Monitor-51仿真板的製作方法,但無完整的硬體電路圖,軟體設置也比較繁瑣。http://www.c51bbs.com。也有關於自製Monitor-51仿真板的專門討論,有很多愛好者在製作仿真板時遇到一些問題,當然也有成功者。筆者也是Keil C51的用戶,並成功自製了Monitor-51仿真板,有一些心得。本文提供了Monitor-51仿真板的硬體電路,並對其進行了分析,詳細說明了監控程序的生成方法,對使用中常出現的問題給出了解決方法。

1 硬體電路

Monitor-51仿真板的硬體資源要求如下:

·5K字節的程序存儲空間,用於存放監控程序;

·256位元組的外部數據存儲單元(系統需要)和可選的5K字節的跟蹤緩衝區;

·足夠大的外部數據存儲空間用於裝載完整的用戶應用程式;

·串行口及一個用作波特率發生器的內部定時器;

·6位元組的堆棧空間,用於用戶程序的測試;

·如果用戶程序大於64K字節,P1口的部分引腳要用於程序存儲空間擴展;

·其它資源均可為應用程式所用。

根據以上要求,筆者設計的Monitor-51仿真板電路原理如圖1。

需要說明的是,圖1中存放用戶程序的32K字節外部數據存儲器62256的OE(輸出允許引腳),是將CPU的PSEN和RD信號相與後再與之相連,稱為von Neumann接法。此時外部數據存儲器在PSEN有效時,就相當於外部程序存儲器,當然監控程序的存放地址空間不斷與這種接法的外部數據存儲空間相重複。Von Neumann接法的另一個作用是調試時可以在用戶程序代碼中設置斷點,監控程序修改用戶程序代碼在所有的斷點處插入ACALL指令。

2 監控程序

Monitor-51仿真板的監控程序可用Keil C51提供的INSTALLBAT批處理文件生成,此文件在路徑下,須在DOS環境下執行,語法如下:

INSTALL serialtype [xdatastart [codestart [BANK] [PROMCHECK]]],[]為可選項。

命令中的各參數解釋如下:

serialtype:串行通信設置,現將有關MCS-51系列單片機的serialtype設置的含義列於表1中。

表1 MCS-51系列單片機的serialtype設置含義


xdatastart:指定Monitor-51監控程序使用的外部存儲單元的頁號(一頁為256位元組)即上節所需硬體資源的第2項,取值為0-FF之間的十六進位數,預設值為 FF。例:xdatsatart=FF,則X:0xFF00..X:0xFFFF(X表示外部數據存儲單元)被Monitor-51監控程序存放內部變量,用戶應用程式不能使用。

Codestart:指定監控程序代碼在程序存儲起始頁數,即起始位置,取值為0~F0之間的十六進位數,預設值為0。

BANK:可選項,為代碼區分組的應用程式安排,應用程式不超過64K,一般不選此項。

PROMCHECK:可選項,Monitor-51監控程序在CPU復位時檢查在程序存儲區0地址處是EPROM還是RAM。


相關焦點

  • 在keil中怎麼燒寫程序
    52 38350 分享海報 描述   什麼是keil
  • ARM DS-5開發STM32程序(Eclipse配合Keil插件使用)
    我使用是MDK 4.72的。本文引用地址:http://www.eepw.com.cn/article/201611/317296.htmhttp://pan.baidu.com/s/1o6iHPVG2.安裝DS-5,並註冊社區版(免費閹割)。
  • KEIL、uVision、RealView、MDK、KEIL C51區別比較
    /170578.htm從接觸MCS-51單片機開始,我們就知道有一個叫KEIL的軟體。KEIL公司(現在是ARM公司的一個公司)的軟體恰好可以提供這樣的功能,並且它還有很多優點,比如工程易於管理,自動加載啟動代碼,集編輯、編譯、仿真一體,調試功能強大等等。因此,不管是初學單片機的愛好者,還是經驗豐富的工程師,都非常喜歡使用這些軟體。
  • Keil uVision5、RealView MDK、Keil C51之間的關係
    從接觸MCS-51單片機開始,我們就知道有一個叫KEIL的軟體。KEIL公司(現在是ARM公司的一個公司)的軟體恰好可以提供這樣的功能,並且它還有很多優點,比如工程易於管理,自動加載啟動代碼,集編輯、編譯、仿真一體,調試功能強大等等。因此,不管是初學單片機的愛好者,還是經驗豐富的工程師,都非常喜歡使用這些軟體。但是,即使熟練使用了KEIL軟體,有些概念我們還是不容易理清,常常混淆。
  • cypress與Keil聯手為其PSoC Creator IDE推出編譯器
    µVision4中靈活的窗口管理系統使得開發者可以使用多個監控器,並且可以控制窗口放在視覺表面的任何位置。  對於基於ARM Cortex™-M3處理器的賽普拉斯PSoC5器件,Keil提供升級服務,可升級到其完全版的微處理器開發包MDK-ARM。MDK-ARM是ARM推出的一款工業標準的編譯器,具有精密的糾錯和跟蹤能力,可以使用PSoC5器件中Cortex-M3處理器的高級功能。
  • 51World發布城市仿真平臺,12時克隆上海,該類軟體曾被海外壟斷
    在近日的51WORLDEC3地球克隆計劃3發布會上,51VR公司向外界展示了一種更快速和低成本的「克隆」能力。佔地3750平方公裡,擁有超過40萬座建築和無數道路的上海,只要使用超過3萬元的伺服器,不到12個小時就能夠在數字世界裡還原出來,總體仿真程度和真實畫面只有10%的差距,還可以調節天氣和光照。在雲渲染背景下,可以使用ipad和手機終端實時觀看。並在會上正式更名51World。
  • 仿真模型製作公司的起源以及工序流程
    自仿真模型開始發展至今,仿真模型製作公司的工序越來越透明化,單是看一個產品,只要上網查一下資料,所有資料都一覽無遺。所以現在部分仿真模型製作公司開始往多元化的路線發展,產品不止局限於仿真恐龍,還延伸出了仿真動物一大類。
  • 機械仿真三維動畫製作的優點有哪些
    機械仿真三維動畫在機械產品培訓和售後中的應用,不僅可以作為企業內部營銷人員和客戶操作人員的教材,而且可以為客戶提供全方位的視頻產品說明。還可以作為精美的禮物送給客戶,促進產品信息在客戶市場上以「口碑」的方式傳播。下面翼虎小編將為大家詳細介紹,機械仿真三維動畫製作的優點。
  • 長葛室式分離機模型全仿真化工實訓模型
    長葛室式分離機模型全仿真化工實訓模型很多的大型化工在使用中都是會遇到一些問題的,因為是大化工,所以在設備的使用上面會更加的小心謹慎,因為一旦出現問題就會是重大的,所以對於大化工中的設備在使用之前都是會使用化工模型來模擬實際的工作環境進行工作,然後發現問題解決問題的。
  • 製作太陽能電池板的金屬
    打開APP 製作太陽能電池板的金屬 姚遠香 發表於 2019-01-09 17:02:42
  • ROBOGUIDE軟體工具機上下料仿真:數控銑床運動機構製作
    本期,以FANUC數控銑床為例介紹一下ROBOGUIDE軟體工具機設備運動機構的製作方法。從模型庫添加數控銑床由於FANUC廠商本身也是數控工具機製造商,因此ROBOGUIDE軟體自身的模型庫中也集成了FANUC數控工具機,可以直接導入虛擬仿真環境中使用。
  • 大神手把手教你STC單片機片上仿真法
    可以說,以上就是一次仿真,一輛真車和兩個假人有計劃地撞牆,模擬了真實車禍情況。仿真讓實驗變得可能,因為沒有一個真人願意坐在車裡參與這場實驗。當真實情況很難在開發時再現時,仿真就可以幫助開發者完成必要的實驗。這就如同單片機開發中,我們在自己的實驗板上去開發一款產品一樣。當我們設計好了一個產品的功能,我們要在實驗板上模擬用戶的操作,看看操作是否正常,產品的反應速度和穩定性如何。
  • 51單片機入門之一:點亮一個發光二極體
    下面我們就使用C語言編寫一個程序點亮實驗板上的一個發光二極體。首先我們來講一下發光二極體的發光原理。
  • 射頻大功率器件TRL校準件的設計與製作
    本文基於負載牽引系統,採用簡單、便捷以及可重複使用的理念,使用常規的微帶線階梯型阻抗變換器電路為基礎,充分考慮在應用測試中的偏置電路,進行前期使用ADS(Advanced Design System)仿真加後期驗證,設計製造了低耗無串擾的TRL(Though Reflected Delay)校準件,為測試得到射頻大功率器件的射頻性能奠定了優異的基 礎。
  • 電路仿真軟體哪個好?7款主流電路仿真軟體優缺點大比拼
    每天不知有多少電路設計及驗證者,使用著各種電路仿真軟體工具。俗話說,工欲善其事必先利其器,如何挑選合適的電路仿真軟體工具?是決定工作效率的一個關鍵。對於市場上各類電路仿真軟體工具,工程師至少要做到知己知彼,什麼樣的電路仿真軟體工具適合什麼樣的電路設計?各種電路仿真軟體工具的優點及不足?本文為大家整理了常用的幾款電路仿真軟體工具,並對這些電路仿真軟體工具的優缺點做了簡單比較。
  • STM32開發環境(工具)之Keil MDK 介紹
    本章將先對STM32常用的開發工具Keil MDK和IAR EWARM進行簡單介紹,然後結合STM32_SK仿真評估板和STM32F103C的開發板講解STM32片上資源使用,最後給出一個基於STM32的數據採集器的應用實例。
  • 微波EDA電磁場仿真軟體評述
    主要應用有:微帶匹配網絡、微帶電路、微帶濾波器、帶狀線電路、帶狀線濾波器、過孔(層的連接或接地)、耦合線分析、PCB板電路分析、PCB板電磁幹擾分析、橋式螺線電感器、平面高溫超導電路分析、毫米波集成電路(MMIC)設計和分析、混合匹配的電路分析、HDI和LTCC轉換、單層或多層傳輸線的精確分析、多層的平面電路分析、單層或多層的平面天線分析、平面天線陣分析、平面耦合孔的分析等。
  • 電源仿真中判定電流密度的標準是什麼過孔電流大小的標準是什麼
    打開APP 電源仿真中判定電流密度的標準是什麼過孔電流大小的標準是什麼 發表於 2019-03-09 10:51:45 電源仿真的過程中
  • 多路舵機控制PWM發生器的設計與Proteus仿真
    以Proteus和Keil軟體為基礎,介紹了在Proteus環境下利用51單片機產生多路PWM脈衝的實現方法。最後以一個典型的應用實例驗證了設計的可行性與可靠性。實驗證明,本系統可在單片機定時器資源有限的情況下同時對多個舵機的輸出轉角進行控制。
  • 電子仿真:51單片機實現LED燈閃爍
    電子仿真軟體:Proteus筆者認為對於沒有條件的小夥伴,最好的辦法是用電子仿真軟體來模擬實驗。需要軟體的小夥伴可以私信筆者「Proteus」來獲取,裡面不僅有官方正版的軟體、安裝教程、漢化補丁、還有關於此軟體的詳細使用教程,如下圖所示。至於Proteus到底是一個可以幹什麼的軟體,現在不做解釋,請往下看實驗現象。