51单片机简易仿真器的制作
KEILMonitor-51仿真板的制作与使用
![KEILMonitor-51仿真板的制作与使用](https://img.taocdn.com/s3/m/0d0413e377eeaeaad1f34693daef5ef7bb0d127b.png)
KEILMonitor-51仿真板的制作与使用MCS-51单片机在我国应用最为关广泛、经久不衰。
以往单片机应用程序主要用汇编语言编写。
由于汇编语言程序的可读性和可移植性都较差,采用汇编语言编写单片机应用程序不但周期长,而且调试和排错也比较困难。
为了提高编制单片机应用程序的效率,改善程序的可读性和可移植性,采用高级语言无疑是一种最好的选择。
C语言是一种通用的计算机程序设计语言,既具有一般高级语言的特点,又能直接对计算机的硬件进行操作,表达和运算能力也较强,许多以往只能采用汇编语言来解决的问题现在都可以改用C语言解决。
德国Keil公司多年来致力于单片机C语言编译器的研究。
该公司开发的Keil C51是一种专门为8051单片机设计的高效率C语言编译器,符合ANSI 标准,生成的程序代码运行速度极高,所需要的存储器空间极小,完全可以与汇编语言媲美。
近年来,Keil C51不断升级,目前最高版本为V7.0。
高版本的Keil C51编译器,尤其是Keil uVision2(基于Windows的C51集成编译环境)以其性能优越、使用方便,受到了众多单片机爱好者的欢迎。
Keil C51以软件包的形式向用户提供主要包括C51交叉编译器、A51宏汇编器、BL连接定位器等一系列工具和uVision2模拟仿真、调试器等。
C51具有丰富的函数库,包含100多种功能函数,为用户编程提供了极大的方便。
C51程序可以实现与汇编语言的接口,两者相互之间的调用十分方便。
笔者是Keil C51的用户,并成功自制了Monitor-51仿真板,有一些心得。
本文提供了Monitor-51仿真板的硬件电路,并对其进行了分析,详细说明了监控程序的生成方法,对使用中常出现的问题给出了解决方法。
1.硬件电路Monitor-51仿真板的硬件资源要求如下:*5K字节的程序存储空间,用于存放监控程序;*256字节的外部数据存储单元(系统需要)和可选的5K字节的跟踪缓冲区;*足够大的外部数据存储空间用于装载完整的用户应用程序;*串行口及一个用作波特率发生器的内部定时器;*6字节的队栈空间,用于用户程序的测试;*如果用户程序大于64K 字节,P1口的部分引脚要用于程序存储空间扩展;*其它资源均可为应用程序所用。
第5讲 51单片机系统的构建仿真实验讲解
![第5讲 51单片机系统的构建仿真实验讲解](https://img.taocdn.com/s3/m/d2ce18c4941ea76e58fa0476.png)
按键手动复位电路见图5-6。 脉冲复位是利用RC微分电路产生的正脉冲来实现的,脉 冲复位电路见图5-7。图中阻容参数适于6MHz时钟。
14
图5-6 按键电平复位电路 图5-7 按键脉冲复位电路
15
5.4 源程序的建立与编译
2. 加载目标代码文件
(1) 在Proteus ISIS中,左键双击AT89C51元件打开 “Edit Component”对话框,设置单片机的频率为 12MHz;
(2) 在该窗口的“Program File”栏中,选择先前在Keil中 编译产生的“.HEX”文件;
(3) 在Proteus ISIS菜单栏中选择【File】→【Save Design】选项,保存设计;
Keil是德国Keil公司开发的单片机编译器,是目前 最好的51单片机开发工具之一,可以用来编译C源 代码和汇编源程序、连接和重定位目标文件和库文 件、创建HEX文件、调试目标程序等,是一种集成 化的文件管理编译环境。
在Proteus中,可以直接与Keil编程软件进行联调, 进而实现对所设计电路的验证。
第五讲 51单片机系统的构建仿真实验
5.1 51单片机系统的硬件仿真电路的设计 5.2 时钟电路的设计与验证 5.3 上电复位和手动复位电路的设计与验证 5.4 源程序的建立与编译 5.5 proteus与单片机电路的交互式仿真与
调试 5.6 keil uV3与proteus联调的配置方法
MCS-51系列单片机在很多产品中得到了广泛的应 用。在具体的工程实践中,单片机应用技术所涉及 的实践环节较多,且硬件投入较大,如果因为控制 方案有误而进行相应的开发设计,会浪费较多的时 间和经费。Proteus仿真软件很好地解决了这些问 题,它可以像Protel一样绘制硬件原理图并实现硬 件调试,再与Keil编程软件进行联调,实现对控制 方案的验证。尤其对于初学单片机的用户提供了极 大的方便。
51单片机的简单计算器设计和仿真
![51单片机的简单计算器设计和仿真](https://img.taocdn.com/s3/m/bb54fd2289eb172dec63b766.png)
基于单片机的简易计算器设计与仿真设计题目:基于单片机的简易计算器设计与仿真一、设计实验条件:地点:自动化系实验室实验设备:PC 机(装有Keil ;Protues ;Word ;Visio )二、设计任务:本系统选用AT89C51 单片机为主控机。
通过扩展必要的外围接口电路,实现对计算器的设计,具体设计如下:(1)由于设计的计算器要进行四则运算,为了得到较好的显示效果,经综合分析后,最后采用LCD 显示数据和结果。
(2)采用键盘输入方式,键盘包括数字键(0〜9)、符号键(+、-、X、十)、清除键(on\c)和等号键(=),故只需要16个按键即可,设计中采用集成的计算键盘。
(3)在执行过程中,开机显示零,等待键入数值,当键入数字,通过LCD 显示出来,当键入+ 、-、*、/运算符,计算器在部执行数值转换和存储,并等待再次键入数值,当再键入数值后将显示键入的数值,按等号就会在LCD上输出运算结果。
(4)错误提示:当计算器执行过程中有错误时,会在LCD上显示相应的提示,如:当输入的数值或计算得到的结果大于计算器的表示围时,计算器会在LCD上提示overflow ;当除数为0时,计算器会在LCD上提示error。
设计要求:分别对键盘输入检测模块;LCD显示模块;算术运算模块;错误处理及提示模块进行设计,并用Visio画系统方框图,keil与protues仿真分析其设计结果。
三、设计时间与设计时间安排:1、 设计时间:6月27日〜7月8日2、 设计时间安排:1 、前言: (自己写, 组员之间不能相同,写完后将 红字删除,排版时注意对齐 )本设计是基于 51 系列单片机来进行的数字计算器系统设计,可以完成计算 器的键盘输入,进行加、减、乘、除基本四则运算,并在 LCD 上显示相应的结 果;设计电路采用 AT89C51 单片机为主要控制电路, 利用 MM74C922 作为计 算器4*4键盘的扫描IC 读取键盘上的输入;显示采用字符LCD 静态显示;软件 方面使用 C 语言编程,并用 PROTUES 仿真。
做一个计算器_用51单片机做一个简单的计算器小程序
![做一个计算器_用51单片机做一个简单的计算器小程序](https://img.taocdn.com/s3/m/b0ae2b040a4e767f5acfa1c7aa00b52acfc79ca4.png)
做⼀个计算器_⽤51单⽚机做⼀个简单的计算器⼩程序⼀:硬件仿真图分别为8位数码管和4位数码管注意:本仿真案例有偿提供,请点击⽂章最下⽅的阅读原⽂,查看仿真图和程序下载地址。
本仿真仅供参考,如有需要修改电路和程序,请联系管理员有偿修改。
当然,如果你动⼿能⼒强,完全可以按照本⽂提供的电路图和程序源码⾃⾏搭建。
硬件部分⽐较简单,当键盘按键按下时它的那⼀⾏、那⼀列的端⼝为低电平。
因此,只要扫描⾏、列端⼝是否都为低电平就可以确定是哪个键被按下。
本计算器是以80C51单⽚机为核⼼构成的简易计算器系统。
该系统通过单⽚机控制,实现对4*4键盘扫描进⾏实时的按键检测,并把检测数据和计算结果存储下来,显⽰在LED数码管上,并可实现清零。
整个系统主要可分为四个主要功能模块:功能模块⼀:实时键盘扫描;功能模块四:清零整个计算器系统的⼯作过程为:⾸先初始化参数,送LED低位显⽰“0”,功能键位不显⽰。
然后扫描键盘看是否有键输⼊,若有,读取键码。
判断键码是数字键、清零键还是“+” 、“—” 、“*” “/” ,是数值键则送LED显⽰并保存数值,是清零键则做清零处理,是功能键则⼜判断是“=”、清零、还是运算键,若是“=”则计算最后结果并送LED显⽰,若是运算键则保存相对运算程序的⾸地址,若是清零键则跳转回初始化阶段使所有值清零。
⼆、主程序流程图程序的主要思想是:将按键抽象为字符,然后就是对字符的处理。
将操作数分别转化为字符串存储,操作符存储为字符形式。
然后调⽤compute()函数进⾏计算并返回结果。
具体程序及看注释还有流程图。
三:键盘扫描程序流程图四:显⽰程序流程图五:程序源码#include#include /* isdigit()函数 */#include /* atoi()函数 */#define uchar unsigned char#define uint unsigned intuchar operand1[9], operand2[9]; /* 操作数 */uchar operator; /* 操作符 */void delay(uint);uchar keyscan();void disp(void);void buf(uint value);uint compute(uint va1,uint va2,uchar optor);uchar code table[] = {0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90,0xff}; /* 字符码表 */uchar dbuf[8] = {10,10,10,10,10,10,10,10}; /* 显⽰缓存 */ /* 延时函数 */void delay(uint z){uint x,y;for(x=z;x>0;x--)for(y=110;y>0;y--);}/*******************************************键盘扫描程序将按键转化为字符并作为输出'$','#'分别表⽰清零键和没有键按下*******************************************/uchar keyscan(){uchar skey; /* 按键值标记变量 *//***********************扫描键盘第1⾏while((P1 & 0xf0) != 0xf0) /* 有按键按下 */ {delay(3); /* 去抖动延时 */while((P1 & 0xf0) != 0xf0) /* 仍有键按下 */{switch(P1) /* 识别按键并赋值 */{case 0xee: skey = '7'; break;case 0xde: skey = '8'; break;case 0xbe: skey = '9'; break;case 0x7e: skey = '/'; break;default: skey = '#';}while((P1 & 0xf0) != 0xf0) /* 等待按键松开 */;}}/***********************扫描键盘第2⾏************************/P1 = 0xfd;while((P1 & 0xf0) != 0xf0){delay(3);while((P1 & 0xf0) != 0xf0){switch(P1){case 0xed: skey = '4'; break;case 0xdd: skey = '5'; break;case 0xbd: skey = '6'; break;case 0x7d: skey = '*'; break;while((P1 & 0xf0) != 0xf0) ;}}/***********************扫描键盘第3⾏************************/P1 = 0xfb;while((P1 & 0xf0) != 0xf0) {delay(3);while((P1 & 0xf0) != 0xf0) {switch(P1){case 0xeb: skey = '1'; break; case 0xdb: skey = '2'; break; case 0xbb: skey = '3'; break; case 0x7b: skey = '-'; break; default: skey = '#';}while((P1 & 0xf0) != 0xf0) ;}}/***********************扫描键盘第4⾏************************/P1 = 0xf7;while((P1 & 0xf0) != 0xf0) {delay(3);{case 0xe7: skey = '$'; break;case 0xd7: skey = '0'; break;case 0xb7: skey = '='; break;case 0x77: skey = '+'; break;default: skey = '#';}while((P1 & 0xf0) != 0xf0);}}return skey;}void main(){uint value1, value2, value; /* 数值1,数值2,结果 */uchar ckey, cut1 = 0, cut2 = 0; /* ckey键盘输⼊字符 */ uchar operator; /* 运算符 */uchar i, bool = 0;init: /* goto语句定位标签 */buf(0); /* 初始化 */disp();value = 0;cut1 = cut2 = 0;bool = 0;for(i = 0;i < 9;i++){operand1[i] = '\0';operand2[i] = '\0';} /* 初始化 */while(1){ /* isdigit函数,字符是阿拉伯数字返回⾮0值,否则返回0 */if(isdigit(ckey)){switch(bool){case 0:operand1[cut1] = ckey;operand1[cut1+1] = '\0';value1 = atoi(operand1); /* atoi函数,将字符串转化为,int整数 */ cut1++;buf(value1);disp();break;case 1:operand2[cut2] = ckey;operand2[cut2+1] = '\0';value2 = atoi(operand2);cut2++;buf(value2);disp();break;default: break;}}else if(ckey=='+'||ckey=='-'||ckey=='*'||ckey=='/'){bool = 1;operator = ckey;buf(0);dbuf[7] = 10;disp();{value = compute(value1,value2,operator);buf(value);disp();while(1) /* 计算结束等待清零键按下 */ {ckey = keyscan();if(ckey == '$') /* 如果有清零键按下跳转到开始 */ goto init;else{buf(value);disp();}}}else if(ckey == '$'){ goto init;}}disp();}}/******************************************运算函数输⼊:操作数和操作符输出:计算结果*******************************************/uint compute(uint va1,uint va2,uchar optor){uint value;switch(optor){case '*' : value = va1*va2; break; case '/' : value = va1/va2; break; default : break;}return value;}/******************************************* 更新显⽰缓存输⼊:⽆符号整数输出:将输⼊送⼊显⽰缓存*******************************************/ void buf(uint val){uchar i;if(val == 0){dbuf[7] = 0;i = 6;}elsefor(i = 7; val > 0; i--){dbuf[i] = val % 10;val /= 10;}for( ; i > 0; i--)dbuf[i] = 10;}/******************************************* 显⽰函数*******************************************/ void disp(void)bsel=0x01;for(n=0;n<8;n++) {P2=bsel;P0=table[dbuf[n]]; bsel=_crol_(bsel,1); delay(3);P0=0xff;}}。
自制51芯片仿真器完全手册
![自制51芯片仿真器完全手册](https://img.taocdn.com/s3/m/e58486936bec0975f465e2c8.png)
自制51芯片仿真器完全手册初学51单片机或是业余玩玩单片机开发,每次总要不断的调试程序,如没有仿真器又不喜欢用软件仿真,那只有每次把编译好的程序烧录到芯片上,然后在应用电路或实验板上观察程序运行的结果,对于一些小程序这样的做好也可以很快找到程序上的错误,但是程序大了,变量也会变的很多,而直接烧片就很难看到这些变量的值了,在修改程序时还要不断的烧片实验,确实很麻烦,这时如果有一台仿真器就会变得很好方便了。
但一台好的仿真器对于业余爱好者来说确实有一些贵,在这里介绍这种易于自制的51芯片仿真器虽然有一些地方不够完善,但还是非常适于初学51单片机的朋友和经济能力不是很好的业余爱好者。
这个仿真器的仿真CPU是使用SST公司的SST89C58或SST89C54(其它相容的芯片也可,这里主要讲述SST89C58),对于没有可以烧写SST89C58芯片的朋友应该选用CA版本的SST89C58芯片,这个CA型号的芯片出厂时已内置了BSL1.1E的固件程序。
那什么是BSL呢?BSL就是英文BOOT-Strap Loader,意思就是可引导装载,形象来说就像电脑用DOS起动盘起动后可以装载应用程序并运行。
只不过SST89C58是用串口来输入程序资料的。
为了能把编译好的单片机程序HEX或BIN文件下载到SST89C58芯片上,SST 公司还提供了一种叫EasyIAP的软件,IAP为In-ApplicationProgramming,有了这个软件就可以把SST89C54变为在线下载的实验器。
在这里不详述EasyIAP的使用,只讲述如何利用它去把SST89C58升级为带SoftICE固件程序的51仿真器。
图1SST89C58一、制作带串口的的最小化应用板无论是EasyIAP还是仿真器,都需要用串行口使SST89C58芯片和PC上位机进行通讯传输数据,因此我们先要制作一个带RS232/TTL转换的应用板,如果你的51实验电路板或目标电路板已带有这样的电路那么你就可以跳过这一段了。
单片机KEIL51和proteus仿真软件的使用
![单片机KEIL51和proteus仿真软件的使用](https://img.taocdn.com/s3/m/70b15fff7c1cfad6195fa766.png)
实验:KEIL51和proteus仿真软件的使用一、实验目的1、掌握KEIL51软件的使用方法2、掌握proteus仿真软件的使用方法二、实验设备及软件1、单片机实验板2、PC机3、KEIL514、proteus三、实验任务KEILC和proteus仿真软件的使用方法四、实验步骤1、Proteus ISIS 设计单片机电路的基本步骤:(1) 新建设计文件夹或打开一个现有的设计文件。
(2) 选择元器件(通过关键字或分类检索)。
(3) 将元器件放入设计窗口。
(4) 添加其他模型(电源、地线、信号源等)和相关的虚拟仪器。
(5) 编辑和连接电路。
(6) 编写单片机所需的源程序。
(7) 加入源程序,并通过构造,得到仿真程序或目标程序。
(8) 根据需要,设置对象的属性,如将单片机的”Program File”属性设置为上述仿真调试程序或目标程序。
(9) 启动仿真功能,对电路进行仿真操作,验证其功能。
2、Keil 51基本步骤(1)单击Project菜单项,选择New Project项。
此时弹出Create New Project对话框,选择合适的路径口,在文件名一栏中填入新工程的名字。
单击保存。
(2)根据所用的器件,选择CPU的型号,单击确定。
(3)Keil51询问是否生成默认的配置文件,这个可选可不选。
单击NO,观察项目文件管理窗口的变化。
(4)在File菜单下单击New选项,新建文件。
此时在代码窗口出现一“Text1”空白文档。
(5)在“Text1”中编辑完代码后,单击File菜单中的保存项,弹出保存对话框。
注意在对文件命名时必须加扩展名.asm。
(6) 在项目导航栏中Source Group 上单击右键,选Add File to Group ‘Source Group 1’。
弹出Add File 对话框。
选中刚才保存的xxxx.asm.文件,单击Add,然后关闭对话框。
此时在项目文件管理窗口中就会出现刚才所添加的文件xxxt.asm。
单片机简易计算器的设计与仿真
![单片机简易计算器的设计与仿真](https://img.taocdn.com/s3/m/746130733868011ca300a6c30c2259010202f3c3.png)
单片机简易计算器的设计与仿真设计与仿真一个单片机简易计算器可以分为以下几个步骤:构建电路、编写程序、进行仿真。
下面将详细进行说明。
一、构建电路1.硬件设计:- 使用单片机,可以选择常用的型号,例如ATmega16-连接20MHz的晶振到XTAL1引脚和XTAL2引脚,用于提供单片机的时钟信号。
-连接VCC引脚和GND引脚,为单片机提供电源。
-连接一个16x2的液晶显示屏,用于显示输入和计算结果。
-连接数个按键,例如数字键0-9和运算符键+、-、*、/等。
2.硬件连接:-连接液晶显示屏的VCC引脚和GND引脚到正负电源。
-连接液晶显示屏的RS引脚和RW引脚到单片机的IO口,用于控制液晶显示屏。
-连接液晶显示屏的数据线到单片机的IO口,用于发送显示的字符。
-连接按键到单片机的IO口,用于检测用户输入。
3.电路图:根据硬件设计的需求,绘制电路图并进行连接。
二、编写程序1.程序框架:-引入头文件,包括液晶显示屏操作函数的头文件。
-定义常量,包括液晶显示屏的引脚定义、按键的引脚定义等。
-定义全局变量,用于保存用户输入和计算结果等。
-编写主函数,程序的入口。
-编写显示函数,用于在液晶显示屏上显示字符。
-编写按键检测函数,用于检测用户按键输入。
-编写计算函数,根据用户的输入进行相应的计算运算。
2.程序实现:-在主函数中,初始化单片机的IO口,设置液晶显示屏的引脚,并调用液晶显示函数显示欢迎界面。
-在死循环中,不断检测按键的输入,并根据按键进行相应的操作,例如输入数字、输入运算符、清零、计算等。
-根据用户的输入,调用计算函数进行相应的计算,并将结果显示在液晶显示屏上。
三、进行仿真使用仿真软件(例如Proteus)进行仿真,可以验证电路和程序的可靠性和正确性。
根据实际情况,对电路进行布线和调整,测试程序逻辑是否正确,模拟按键的输入,查看液晶显示屏是否正确显示结果。
总结:设计与仿真一个单片机简易计算器,需要从构建电路、编写程序到进行仿真,每个步骤都需要细心和耐心。
用Proteus软件进行51系列单片机仿真的制作和演示教程
![用Proteus软件进行51系列单片机仿真的制作和演示教程](https://img.taocdn.com/s3/m/0af097fe846a561252d380eb6294dd88d0d23dbf.png)
用Proteus软件进行51系列单片机仿真的制作和演示过程教程一、ISIS界面简介假如读者的电脑上已成功安装了Proteus,则可以从电脑桌面的“开始”-“程序”-Proteus 6 Professional-ISIS 6 Professional,启动ISIS。
ISIS是仿真模拟设计SCH设计程序。
ISIS成功启动后的界面如图1所示,分为菜单栏、工具栏,工具箱、编辑窗口(显示正在编辑的电路原理图)、预览窗口(显示整个电路图的缩略图)、对象选择器,对象旋转工具和模拟调试时用的快捷调试按钮。
二、绘制仿真电路的原理图笔者以图2所示的电路为例,介绍电路原理图的绘制过程。
操作过程为,用鼠标左键点击工具箱的元器件“”按钮,使其选中,再选中ISIS对象选择器左边中间的“”按钮,出现“Pick Devices”对话框,如图3所示,在这个对话框里读者可以选择元器件和一些虚拟仪器。
在“Libraries”下面找到“MICRO”选项,找到单片机A T89C51,双击“A T89C51”,这样在左边的对象选择器就有了A T89C51这个元件了,点击一下这个元件,然后把鼠标指针移到右边的原理图编辑区的适当位置,点击鼠标的左键,就把A T89C51放到原理图区。
按照同样方法把所需的其它元器件都放到原理图编辑区。
元器件放置完后,若位置不合适,需要调整元器件的位置,可先通过鼠标右键选中对象,此时被选中的对象变成红色显示,再用鼠标左键点击被选中的对象不放并拖到合适的位置后再释放鼠标左键。
若要旋转对象,可在选中对象时按旋转按钮进行旋转。
若要编辑对象的属性,在对象被选中时,用鼠标左键点击对象,此时出现属性对话框,比如要改变电阻的属性,可右键选中电阻,再用左键点击被选中的电阻,出现如图4所示的对话框。
在这里我们可以改变电阻的标号,电阻值,PCB封装以及是否把这些东西隐藏等,修改后,点击“OK“按钮即可。
在Proteus,许多器件没有Vcc和GND引脚,其实它们被隐藏了,在使用时可以不加电源。
Multisim里仿真8051单片机
![Multisim里仿真8051单片机](https://img.taocdn.com/s3/m/f15bc13fdc36a32d7375a417866fb84ae55cc353.png)
Multisim里仿真8051单片机Multisim 里仿真8051单片机实现的功能:本次实验要求实现基于单片机的LCD显示,LCD分两次显示,第一次显示“0123”第二次显示“456789A”。
LCD采用08x1的液晶显示器,单片机采用8051。
实验内容:1、建立工程存放文件夹:打开“我的文档”,在National Instruments文件夹中打开Circuit Design Suite 10.0,然后在MCU Workspaces文件夹中新建一个文件夹,文件名为project。
2、双击桌面上的Multisim10的图标,软件打开需要等待一定的时间。
3、设置:点击菜单栏中的“Options”,选择“sheet properties”,在Circuit中的“NET names”栏里选中“Hide All”,然后再点击Workspace,在“Sheet size”栏中选择“A4”,点击“OK”。
4、保存工程文件:点击File中的Save,在弹出的对话框中点击MCU Workspaces,然后点击自己新建的project文件夹,然后点击“保存”。
5、选择元器件:在空白纸上点击右键,然后选择“Place Component”,在弹出的对话框中的“Group”中选择“MCU Module”,然后在“family”中选择“805X”中的“8051”,点击“OK”,在图上适合的位置点击左键,在弹出的对话框中点击“Browse”,在“我的文档”中找到刚新建的project文件夹,点击该文件夹,然后点击确定。
在“Please enter the work space name”中输入文件名“project”,点击“Next”,在“Programming language”中选择“Assembly”,然后点击“Finish”。
接着在“Group”中选择“Basic”,在“Family”中选择“RESISTOR”,在Component中点击“10K”电阻,点击“OK”,在适合的位置点击左键即可。
51单片机教程 第八讲 单片机仿真--八个步骤学会单片机
![51单片机教程 第八讲 单片机仿真--八个步骤学会单片机](https://img.taocdn.com/s3/m/f4821a63af1ffc4ffe47acc7.png)
从零到项目开发学51单片机与C语言技术基于HL-1\HJ-3G\HJ-C52开发板QQ:398115088第八讲单片机仿真--怎样才算学会了51单片机单片机仿真单片机仿真的概念和方法一、什么是单片机仿真,为什么要仿真?二、如何进行软件仿真?三、硬件仿真和软件仿真有什么区别,如何进行硬件仿真?如何才算学会了51单片机•只要八个步骤就可以入门单片机•学习使用单片机就是理解单片机硬件结构,在汇编或C语言中学会各种功能的初始化设置,以及实现各种功能的程序编制,我们还可以利用单片机仿真学习板在电脑上做实验,也可以用硬件电路的单片机学习板来做实验。
第一步:数字I/O的使用•使用按钮输入信号,发光二极管显示输出电平,就可以学习引脚的数字I/O功能,在按下某个按钮后,某发光二极管发亮,这就是数字电路中组合逻辑的功能,虽然很简单,但是可以学习一般的单片机编程思想,例如,必须设置很多寄存器对引脚进行初始化处理,才能使引脚具备有数字输入和输出输出功能。
每使用单片机的一个功能,就要对控制该功能的寄存器进行设置,这就是单片机编程的特点,千万不要怕麻烦,所有的单片机都是这样。
第二步:定时器的使用•学会定时器的使用,就可以用单片机实现时序电路,时序电路的功能是强大的,在工业、家用电气设备的控制中有很多应用,例如,可以用单片机实现一个具有一个按钮的楼道灯开关,该开关在按钮按下一次后,灯亮3分钟后自动灭,当按钮连续按下两次后,灯常亮不灭,当按钮按下时间超过2s,则灯灭。
数字集成电路可以实现时序电路,可编程逻辑器件(PLD)可以实现时序电路,可编程控制器(PLC)也可以实现时序电路,但是只有单片机实现起来最简单,成本最低。
定时器的使用是非常重要的,逻辑加时间控制是单片机使用的基础。
第三步:中断•单片机的特点是一段程序反复执行,程序中的每个指令的执行都需要一定的执行时间,如果程序没有执行到某指令,则该指令的动作就不会发生,这样就会耽误很多快速发生的事情,例如,按钮按下时的下降沿。
51单片机的简单计算器设计与仿真资料讲解
![51单片机的简单计算器设计与仿真资料讲解](https://img.taocdn.com/s3/m/a5b13b257fd5360cba1adb60.png)
51单片机的简单计算器设计与仿真基于单片机的简易计算器设计与仿真设计题目:基于单片机的简易计算器设计与仿真一、设计实验条件:地点:自动化系实验室实验设备:PC机(装有Keil;Protues;Word ;Visio )二、设计任务:本系统选用AT89C51单片机为主控机。
通过扩展必要的外围接口电路,实现对计算器的设计,具体设计如下:(1)由于设计的计算器要进行四则运算,为了得到较好的显示效果,经综合分析后,最后采用LCD 显示数据和结果。
(2)采用键盘输入方式,键盘包括数字键(0~9)、符号键(+、-、×、÷)、清除键(on\c)和等号键(=),故只需要16 个按键即可,设计中采用集成的计算键盘。
(3)在执行过程中,开机显示零,等待键入数值,当键入数字,通过LCD显示出来,当键入+、-、*、/运算符,计算器在内部执行数值转换和存储,并等待再次键入数值,当再键入数值后将显示键入的数值,按等号就会在LCD上输出运算结果。
(4)错误提示:当计算器执行过程中有错误时,会在LCD上显示相应的提示,如:当输入的数值或计算得到的结果大于计算器的表示范围时,计算器会在LCD 上提示overflow;当除数为0时,计算器会在LCD上提示error。
设计要求:分别对键盘输入检测模块;LCD显示模块;算术运算模块;错误处理及提示模块进行设计,并用Visio画系统方框图,keil与protues仿真分析其设计结果。
三、设计时间与设计时间安排:1、设计时间:6月27日~7月8日2、设计时间安排:熟悉课题、收集资料: 3天(6月27日~ 6月29日)具体设计(含上机实验): 6天(6月30日~ 7月5日)编写课程设计说明书: 2天(7月6日~ 7月7日)答辩: 1天(7月8日)四、设计说明书的内容:1、前言:(自己写,组员之间不能相同,写完后将红字删除,排版时注意对齐)本设计是基于51系列单片机来进行的数字计算器系统设计,可以完成计算器的键盘输入,进行加、减、乘、除基本四则运算,并在LCD上显示相应的结果;设计电路采用AT89C51单片机为主要控制电路,利用MM74C922作为计算器4*4键盘的扫描IC读取键盘上的输入;显示采用字符LCD静态显示;软件方面使用C语言编程,并用PROTUES仿真。
51仿真器原理图及制作过程
![51仿真器原理图及制作过程](https://img.taocdn.com/s3/m/fc6087e3172ded630b1cb6aa.png)
51仿真器原理图及制作过程
--------------------------------------------------------------------------------
51仿真器原理图及制作过程
此仿真器是采用SST89E564 芯片配合一些电子元器件制作的仿真器。
仿真程序代码63K,现将此仿真器的资料整理如下(部分网站上也有整理,但不够完善):
1.仿真器电路原理图:
2.根据以上原理图将以上硬件搭好,再准备一条串口延长线和电路板连好,另
外我们再下载一个制作仿真器的软件SSTEasyIAP11F.exe 将*程序写入到
芯片,写完之后我们仿真器也就做好了。
具体方法如下:
3.SSTEasyIAP11F.exe 软件的下载地址:
/products/software_utils/softice/index.xhtml
本文来自: 原文网址:/mcu/51mcu/0084927.html
/products/software_utils/softice/index.xhtml
4.解压后打开如下界面:
5.按下图操作,点击红色箭头:
6.得到如下界面,我们先选择仿真芯片为SST89E564,然后点击OK
7.得到下图后,我们点击确定,上电.
8.当出现下图红色箭头所示,表示连接成功.
9.接下来我们开始下载*程序,单击红色箭头的Download SoftICE
10.如下图所示,我们点击OK开始下载*程序
11.整个下载过程不到1分钟就完成了,就这样一个仿真器做好了
本文来自: 原文网址:/mcu/51mcu/0084927.html。
51单片机keil仿真入门_IO操作
![51单片机keil仿真入门_IO操作](https://img.taocdn.com/s3/m/ff9bbd06eff9aef8941e06a9.png)
51单片机keil仿真入门_I/O操作2009-09-26 09:23说起keil C51仿真,我倒不太了解,所以试着看了看,得到的功能与实现信息如下。
软件仿真,不用硬件。
(1)打开kei C,新建一个工程,工程名自取,新建一个C源文件,添加到工程。
(2)生成HEX文件。
右键点击Project Workspace里的Target 1,输出output 里点选HEX复选框即可,这样生成的文件,可以烧录到单片机硬件里,以实看仿真效果。
当然,此目的就是生成可执行的机器程序。
(3)以上准备后,操作如图所示:要操作I/O口,目前我给I/O口赋值。
如点亮灯。
下面是P1^0,P1^2,P2^0,只是用来测试。
点击下图的Debug-Start/Stop Debug Session,开始进入仿真调试,如果停止,请再次点击点处。
点击后,左边应该会出现各寄存器地址等,目前还没有真正的运行。
点击GO 来执行,如下。
查看I/O的信息,Peripherals- I/O-Ports-Port 1此时看到I/O口地址了,赋值为0,的显示为0,即复选框未选中,1为选中。
以上,基本明白了用KeilC查看51单片机I/O 操作程序,仿真后的效果。
如果没有置位或是清位,说明程序还是有问题的。
如果达到,可以烧录芯片真正的实验了。
举一返三,是学习的主要阶段,多多学习,天天学习,天天进步。
类别:单片机技术 | | 添加到搜藏 | 分享到i贴吧 | 浏览(178) | 评论 (2)上一篇:液晶12864汉字显示程序及显示顺...下一篇:AT89s52-51单片机数码管显示完全...。
用SST89E516RD自制51单片机仿真器
![用SST89E516RD自制51单片机仿真器](https://img.taocdn.com/s3/m/be165368011ca300a6c39020.png)
用SST89E516RD自制51单片机仿真器文/吴汉清单片机实验和开发中最重要的一个环节就是程序的调试,在业余条件下大部分人都采用烧写芯片直接到目标板上试验的方法,但是这样做在程序出现问题时比较麻烦,有时候也很难找到程序的问题出在那里。
另外也可以采用软件仿真的方式调试程序,但是这种方式也有局限性,软件仿真有时候并不能完全代替实际使用环境。
因此单片机仿真器成了程序调试中一个重要的设备。
但是在业余条件下很少有人使用价格比较高的仿真器。
为解决这一问题,本文介绍一种用SST公司的单片机SST89E516RD做的基于MCS-51架构的简易51单片机仿真器,它支持与MCS-51架构兼容的芯片,成本只有20多元,很适合业余爱好者制作和使用。
一、单片机SST89E516RD简介SST89E516RD是8位集成存储器的51系列兼容单片机,和51系列单片机软件兼容、开发工具兼容、管脚也兼容。
SST89E516RD片内有两块SuperFlash EEPROM,分为64K主块(Block0)和8K次块(Block1)。
Block0的地址范围是0000h~ffffh;Block1的地址范围是10000h~11fffh。
做仿真器时Block1存储区烧写SoftICE仿真监控程序。
SST89E516RD具有在应用可编程(IAP)和在系统可编程(ISP)的功能,其中IAP是通过串口实现的。
仿真器就是利用了SST89E516RD的IAP功能。
由于SST89E516RD具有两块独立的SuperFlash程序存储区,当监控程序在Block1存储区中运行时可以改写Block0程序存储区中的程序,这就是仿真器的基本特性。
SST89E516RD的引脚图见图1。
更详细的资料见本期配刊光盘。
二、仿真器电路和工作原理仿真器的电路见图2。
仿真器通过计算机的一个串口与KeilμVision2集成开发环境进行通信。
VTl、VT2、VD1、VD2、R1~R5等组成电平转换电路,其中发光二极管VD2作串口通信信号指示。
基于proteus的51单片机仿真
![基于proteus的51单片机仿真](https://img.taocdn.com/s3/m/4799eddd195f312b3169a595.png)
基于proteus的51单片机仿真实例及应用开发说明一、单片机系统的开发流程1、搭建硬件电路;2、编写控制程序;3、将程序“装”到单片机里面;4、运行单片机系统,并检查、调试运行结果。
二、学习单片机的基本条件单片机是一门实践性很强的技术,它牵涉到软件和硬件的学习。
软件指的是单片机控制程序;硬件则是保证单片机运行的基本电路。
无论是程序设计还是电路设计,都需要经过大量的实践练习才能够准确理解和熟练掌握。
1、软件条件:单片机软件的开发流程是:1)编写控制程序;2)对程序进行编译、排错、仿真、调试;3)生成可以用特定软件能烧写到单片机里面的二进制或十六进制文件。
一般的单片机的软件开发用到以下软件:程序编写、编译软件(其中用到最广泛的Keil51):用来编写、编译单片机的控制程序(其中用到最广泛的是AVR fighter或者是STCISPV38A);仿真软件:proteus软件能很好地模拟展示单片机程序是否完成了既定功能;2、硬件条件:程序编写调试完成后,需要在硬件系统中运行,才能够组成一个完整的单片机系统。
一般的必备硬件有:编程器:用来将程序烧录到单片机中的工具;单片机学习板:用来演示和检验单片机系统是否实现了既定功能。
三、对于单片机的硬件电路的设计需要指出的是,单片机的硬件电路是千差万别的,尤其是在制作电路板的时候,牵涉到元器件的布局、走线、抗干扰等多种环境问题,所以单单依靠一个仿真软件是很难真实模拟单片机系统的工作的。
所以在这里的学习,只是作为一种辅助开发的手段,我们可以先将我们的电路和程序在该软件上进行验证,验证通过后在制作电路板进行实际验证。
四、下面简单地对proteus软件的入门进行以下介绍PROTEUS软件是英国Labcenter electronics公司研发的EDA工具软件。
它是一个集模拟电路、数字电路、模/数混合电路以及多种微控制器系统为一体的系统设计和仿真平台。
是目前同类软件中最先进、最完整的电子类仿真平台之一。
自制Monitor-51仿真器
![自制Monitor-51仿真器](https://img.taocdn.com/s3/m/e1d5740e52ea551810a687ce.png)
键盘左右键可以进行前后翻页操作自制Monitor-51仿真器自制Monitor-51仿真器51单片机是很适合初学单片机的人学习的,一则其结构和原理相对于其他单片机而言要简单些,二则现在国内关于51的书籍等学习资源也是很丰富的。
初学单片机的人可以在动手自己制作的过程中得到到动手能力的锻炼,而且往往动手过程要比只坐在那里写程序而言更为有趣味些。
尤其是这个过程中往往多少经历些失败挫折最终获得成功。
学单片机呢,仿真器往往是最为让人着迷的了,因为它可以帮助人更好理解和学习程序知晓程序的运行程序的结构,并能从中获得更多成功的喜悦---亲眼一步一步地看到自己程序的运行,而自制仿真器也是一件很有挑战和好玩的事了。
自己也亲手做过51和AVR单片机的仿真器,这里先介绍51单片机的Moniter-51仿真器,能在Keil编译环境中对51单片机仿真。
下图为用万用板焊的Monitor-51仿真器,由于不是做板焊的,多少看起来是有点粗糙了。
Monitor-51制作的资料包括电路图和调试程序等。
其实光是焊好还并不代表好使,之后的软件配置和烧写过程还颇费些力气的。
下面就介绍在XP系统中利用Keil编译器的仿真器配置文件INSTALL.BAT来生成自己做的仿真器所需要的配置文件。
这个文件在\Keil\C51\MON51中,同意文件夹下还有INSTALL.A51和MON_BANK.A51,这两个文件是Moniter-51的资源配置文件,用户需要修改相关的参数后才能使得仿真器正常运行。
首先由“开始”-->“运行”-->“CMD”进入XP系统的DOS状态,在进入提示界面光标闪烁处键入“CD C:\Keil\C51\MON51 ”(其中C:\为Keil所在的硬盘,可以根据你自己的电脑所安装的路径修改)然后敲”回车“进入MON51所在的文件夹。
然后在下一行的光标闪烁处键入”install.bat 0 7f 0"再敲回车,中途按提示按一次任意键就OK 了(其中参数0 7f 0 是可更改的,需要根据自己的仿真器的电路来设置。
使用软件Proteus仿真51单片机的基本方法
![使用软件Proteus仿真51单片机的基本方法](https://img.taocdn.com/s3/m/13cdcdbc43323968011c92cd.png)
使用软件Proteus仿真51单片机的基本方法初学者学习单片机的一个比较好的方法是进行实践。
可以采用单片机芯片,也可以采用软件仿真。
Proteus是比较常用的仿真软件,下面介绍如何使用Proteus 软件仿真51系列单片机。
添加最主要的仿真元件——单片机。
点击左侧工具栏中的Component Mode(元件模式)按钮,再单击Pick form Libraries(从库中选择)按钮,如下图红框所示位置。
该按钮仅显示一个字母“P”。
会弹出如下图所示对话框,在Keywords文本框(下图红框区域)输入“89C”,就可以在右侧看见大量的单片机型号。
Proteus7.8中可以仿真89C51/89C52以及89C55等多种型号的单片机。
可以根据自己仿真的单片机型号进行选择。
对于初学者,选择89C51就可以。
点击89C51后,点击上图中的OK按钮。
此时鼠标会变成一支笔的形状,在绘图区域的蓝色框内直接点击鼠标左键,鼠标会变为一个单片机的预览,此时将鼠标移动到合适的位置点击鼠标左键,就可以将单片机放置在该位置。
至此我们就已经将AT89C51单片机放置到仿真软件中了。
搭建单片机最小系统读者注意,单片机最小系统可以说是单片机可以正常运行所需要最少的元件组成的系统。
在仿真软件Proteus中,即使没有搭建单片机最小系统,单片机也可以正常仿真运行。
为了让仿真图更加规范合理,建议大家把单片机最小系统搭建出来。
添加电容、电阻以及晶振等电子元件方法类似于单片机,这里不再赘述。
绘制电路图如下图所示。
其中X1为晶振,关键词为“crystal”;C1和C2为瓷片电容,关键词为“cap”,C3为有极性电容,一般为电解质电容,关键词为“cap-elec”;R1为电阻,关键词为“res”。
在上图所示的单片机最小系统中,搭建的自动复位电路需要连接VCC以及GND。
点击左侧工具栏中Terminal Mode按钮,选择按钮右侧的POWER或GND就可以添加了,如下图所示,添加方法与添加元件方法类似。
用SST89E516RD自制51单片机仿真器
![用SST89E516RD自制51单片机仿真器](https://img.taocdn.com/s3/m/f9cff17001f69e31433294cc.png)
单片机实验和开发中最重要的一个环节就是程序的调试,在业余条件下大部分人都采用烧写芯片直接到目标板上试验的方法,但是这样做在程序出现问题时比较麻烦,有时候也很难找到程序的问题出在那里。
另外也可以采用软件仿真的方式调试程序,但是这种方式也有局限性,软件仿真有时候并不能完全代替实际使用环境。
因此单片机仿真器成了程序调试中一个重要的设备。
但是在业余条件下很少有人使用价格比较高的仿真器。
为解决这一问题,本文介绍一种用SST公司的单片机SST89E516RD做的基于MCS-51架构的简易51单片机仿真器,它支持与MCS-51架构兼容的芯片,成本只有20多元,很适合业余爱好者制作和使用。
一、单片机SST89E516RD简介SST89E516RD是8位集成存储器的51系列兼容单片机,和51系列单片机软件兼容、开发工具兼容、管脚也兼容。
SST89E516RD片内有两块SuperFlash EEPROM,分为64K主块(Block0)和8K次块(Block1)。
Block0的地址范围是0000h~ffffh;Block1的地址范围是10000h~11fffh。
做仿真器时Block1存储区烧写SoftICE仿真监控程序。
SST89E516RD具有在应用可编程(IAP)和在系统可编程(ISP)的功能,其中IAP是通过串口实现的。
仿真器就是利用了SST89E516RD的IAP功能。
由于SST89E516RD具有两块独立的SuperFlash程序存储区,当监控程序在Block1存储区中运行时可以改写Block0程序存储区中的程序,这就是仿真器的基本特性。
SST89E516RD的引脚图见图1。
更详细的资料见本期配刊光盘。
二、仿真器电路和工作原理仿真器的电路见图2。
仿真器通过计算机的一个串口与KeilμVision2集成开发环境进行通信。
VTl、VT2、VD1、VD2、R1~R5等组成电平转换电路,其中发光二极管VD2作串口通信信号指示。
基于proteus的51单片机仿真实例四、第一个proteus仿真实例
![基于proteus的51单片机仿真实例四、第一个proteus仿真实例](https://img.taocdn.com/s3/m/7cfbfed9ba4cf7ec4afe04a1b0717fd5360cb2b7.png)
基于proteus的51单片机仿真实例四、第一个proteus仿真实例现在来做第一个基于proteus的仿真实例,同时也了解、熟练一下proteus的使用方法1、打开proteus的智能原理图输入系统ISIS,进入工作环境,2、这个实例中,我们建立如下的电路图。
下面就开始一步一步的实现这个目标吧。
3、单击菜单栏“文件”--“新建设计”选项,弹出模板选择窗口,如下图所示,选择默认模板“DEFAULT”,选择“OK”按钮,即可创建一个新的设计文件。
4、文件创建成功后,要养成立即保存的习惯。
点击“保存”选项,选择保存的路径和文件名。
5、元件的选取。
操作步骤如下图6、点击“P”按钮后,弹出元器件选择对话框。
元器件的选取有两种方法:输入关键字查找、在分类元件中查找。
如下图所示7、添加单片机,在关键字文本框中输入“at89c51”,然后从搜索结果中选择所需要的型号,如下图所示。
选中元件后双击该元件名,该元件就被自动添加到对象选择器。
8、添加电阻。
输入关键字“resistors 470r”,搜索结果栏中将显示所有的匹配元件。
在这里我们选择参数为470R,0.6W的电阻,双击元件名将其添加到对象选择器中。
用同样的方法添加10K电阻(0.6W)到对象选择器中。
9、添加发光二极管。
输入关键字“led-yellow”,在搜索结果栏中选择所需的发光二极管,双击将其放入对象选择器。
10、添加晶振。
输入关键字“cycrtal”,结果搜索栏内只有一种晶振类型,双击将其加入对象选择器。
11、添加电容。
添加33P电容:输入关键字“capacitors”,在搜索结果栏内列出了各种类型的电容,接着输入“33pF”。
则列出各种33pF的电容,选择耐压为50V的电容,双击将其加入对象选择器。
添加10U电容,输入关键字“capactions 10u”,选择“50V radial electrolytic”(圆柱形电解电容),双击将其添加到对象选择器。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
51单片机简易仿真器的制作
实验目的:
由于市场上现有的单片机仿真器非常昂贵,为了减少在开发单片机时的成本,故提出利用SST公司的SST89E564RD系列单片机制作简单的51单片机仿真器。
实验环境:
1.硬件环境:
计算机一台SST89E564RD单片机MAX232芯片串口线一根
2.软件环境:
Protel99SE软件和KeilC51软件。
其中Protel99SE可以完成硬件原理图的设计,以及PCB板的制作;KeilC51可以完成工程的建立,代码的编写,程序的编译以及最终的软硬件仿真。
实验内容:
1.实验原理:
只需将SST单片机的RXD P3.0和TXD P3.1管脚通过一个RS232的电平转换电路连接到PC的COM串口即可,可使用这个RS232的转换电路做一个通用的8051的下载线。
下载时只需将下载线连接到用户目标板上单片机的P3.0P3.1 VCC,GND4个管脚即可进行下载或仿真。
设计的原理图如图1所示,在实际的设计过程中,添加了一个发光二极管,其目的很简单,就是为了验证仿真器供电正常。
图1SST89E564单片机仿真器原理图
设计的SST89E564单片机仿真器的测试板如图2所示,在设计并印制PCB 板之后,硬件电路的设计就完成了。
图2仿真器测试板
2.实验步骤:
1)通过SST串口下载软件BootLoader下载SOFTICE监控代码
由于SST的MCU在出厂时已经将BOOT LOADER的下载监控程序写入到芯片中,因此无需编程器就可通过SST BOOT-STRAP LOADER软件工具将用户程
序下载到SST的MCU中,从而运行用户程序。
SST BOOT-STRAP LOADER软件工具还可将原来的MCU内部的下载监控程序转换为SoftICE的监控程序,从而实现SOFTICE的仿真功能。
执行SSTEasyIAP11F.exe软件运行SST Boot-Strap Loader,在内部模式下检测到对应器件的型号后,SoftICE固件通过按SoftICE菜单下“Download SoftICE”选项下载,便将SoftICE固件下载到MCU。
在BLOCK1的SST Boot-Strap Loader 会被SoftICE固件代替。
详细操作步骤如下
A选择连接的串口
B选择芯片型号和内部存储器模式(选择使用SST89E564RD,使用片内程序存储器)
C选择串口波特率MCU的晶振频率
D按确定后再重新复位MCU
E如果通讯成功在窗口的右上角可以显示出芯片的型号及BOOT LOADER的版本信息
F通讯成功,点击DOWNLOAD SOFTICE的按钮,即可将MCU内部的BOOT LOADER的监控程序更换为SOFTICE的监控程序
G点击确定按钮确认转换为SOFT ICE的监控程序
H这是转换后的提示信息说明转换SOFTICE监控程序成功
此时这片SST89E554芯片便具备了SOFTICE的在线仿真的功能
2)如何使用SoftICE
A设置KEIL C51的DEBUG调试参数环境
使用KEIL C51打开Project用户程序,更改调试仿真的选项,选择为MON-51的硬件仿真
B设置仿真的通讯参数点击SETTING按钮去掉CACHE选项
在完成了以上的设置之后,就可以象使用其他昂贵的仿真器一样对51系统进行调试了。
实验总结:
SST的仿真器功能可以代替大部分的专用仿真器的功能,使在开发单片机时省却了价格昂贵的仿真器和编程器使得51单片机的开发更加容易和普及,并且SST的单片机价格便宜出厂时就包含了在线下载和在线仿真的功能。
SoftICE下载网址:
/products/software_utils/softice/index.xhtm l
3SoftICE用到的MCU硬件资源
SST的SoftICE用到的MCU硬件资源如下
(1)一个UART串口RXD TXD用定时器2做为波特率发生器
(2)8个字节的堆栈空间
(3)SoftICE监控程序分别占用下面MCU的5Kbyte程序空间对SST89C58BLOCK1的1Kbyte从F000h到F3FFh
BLOCK0的4Kbyte从7000h到7FFFh
对SST89C54BLOCK1的1Kbyte从F000h到F3FFh
BLOCK0的4Kbyte从3000h到3FFFh
对SST89x554RC BLOCK1的4KByte从0000h到0FFFh BLOCK0的1Kbyte从7C00h到7FFFh
对SST89x564RD BLOCK1的4Kbyte从0000h到0FFFh BLOCK0的1Kbyte从FC00h到FFFFh
对SST89E/V54RDX BLOCK1的1Kbyte从E000h到E3FFh BLOCK0的4Kbyte从3C00h到3FFFh
对SST89E/V58RDX BLOCK1的1Kbyte从E000h到E3FFh BLOCK0的4Kbyte从7C00h到7FFFh
对SST89E/V516RDX BLOCK1的4Kbyte从0000h到0FFFh BLOCK0的1Kbyte从FC00h到FFFFh
其它部分的存储区域可以由用户的应用程序使用
4.一:仿真器主要性能参数(超大容量64K仿真空间):
1.可仿真89C51、89C52、89S51、89S52、89C58等等51内核的单片机,详见:仿真器支持器件列表。
2.直接支持KEIL C51的IDE开发仿真环境,64K用户可使用仿真程序空
间,0000~FFFF,采用顶级仿真芯片(见图),监控程序存储在特殊空间,不占用0000~FFFF的64K的仿真空间,有别于其他厂家的63K仿真器。
3.全保留单片机特性,避免仿真正常而实际烧录芯片却不正常的问题。
4.RS-232通讯接口,波特率4.8Kbps-57.6Kbps自适应。
5.仿真频率0-40MHz晶振可选,系统配置11.0592MHz。
6.程序代码可以重复装载,无需预先擦除用户程序空间。
7.监控程序占用用户的资源少,全速运行不占用资源。
8.片内64K程序空间可以随时进行在线程序更新,可以调试长达几千行的楼宇智能控制大型程序、键盘控制汉字液晶显示大型程序。
9.可单步、断点、全速、可参考变量、RAM变量。
10.支持汇编、C语言,混合调试。
11.板载仿真头接口可以和任何的试验板、目标板进行连接,从而达到硬件仿真的无限扩展。
12.取消外接P口接线槽,以防止仿真器内部监控程序被意外操作冲掉。
13.采用工业级64K超大容量仿真芯片作为核心部件,抗干扰能力级强,可仿真次数大于等于100万次。
14.内部存储器物理空间64K+4K,是伟福通用仿真器G6型的16倍(4K),是伟福51专用仿真器的8倍。
15.仿真频率最高33/40MHz。
16.支持同时最多10个断点。
支持以下51系列单片机芯片仿真,还有很多公司产品不能一一列出:
Atmel公
司AT89C51、AT89C52、AT89S51、AT89S52、AT89C1051、AT89C2051、AT89C4051、AT89LV52、AT89S53、AT89LS53、AT89C55、AT89LV55
Philips
公司
P80C54、P80C58、P87C54、P87C58、P87C524、P87C528 Winbond公
司
W78C54、W78C58、W78E54、W78E54
SST公司SST89C54、SST89C58
Inter公司i87C54、i87C58、i87L54、i87L58、i87C51FB、i87C51FC Temic公司80C51、80C52、83C154、83C154D、89C51、87C52 Siemens公
司
C501-1R、C501-1E、C513A-H、C503-1R、C504-2R ISSI公司IS80C52、IS89C51、IS89C52
Dallas公司DS83C520、DS87C520。