proteus8professional怎么运行程序

proteus8professional怎么运行程序,第1张

打开Proteus86软件。

_慊鞑说ダ_ile——找到New Project——鼠标左键单击。修改工程名字和工程路径——单击next直到finished并完成建立工程——在键盘上按字母P或者找到工作区的P按钮——跳出搜索元器件界面——输入STM32F103R6——RES和LED-RED找到对应的器件——鼠标左键双击。在工作区——完成STM32电路连接——并双击StM32F103R6——设置晶振为8M——并设置Proteus电源——避免运行出现错误。

_roteus 88是由英国Lab Center Electronics公司出品的一款专业的EDA工具软件(电路仿真软件)。它为用户提供了一整套完善的电路仿真以及PCB设计流程解决方案,从原理图布图、代码调试到单片机与外围电路协同仿真,一键切换到PCB设计,真正实现了从概念到产品的完整设计,是目前世界上唯一将电路仿真软件、PCB设计软件和虚拟模型仿真软件三合一的设计平台。proteus处理器模型支持8051、HC11、

这是我专门为你做的,很简单,我用protues进行了仿真,你可以按我的接法连接,可以吧你的那些个电阻去了,除了P0口要加上拉电阻,其余的IO口没有必要加电阻,芯片内部已经内置了,希望你能喜欢我的回答。

#include<reg51h>

#define uint unsigned int

#define uchar unsigned char

uchar code table[]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90,0xff};

sbit key=P1^0;

uchar num,ge,shi;

void delay(uint x)

{

uchar t;

while(x--) for(t=0;t<120;t++);

}

void keyscan()

{

if(key==0)

{

delay(10);

if(key==0)

{

while(key==0);

num++;

ge=num%10;

shi=num/10;

if(num==100)

num=0;

}

}

}

void main()

{

while(1)

{

keyscan();

P2=table[shi];

delay(2);

P3=table[ge];

delay(2);

}

}

这个问题好比是问XP/Win7好,还是windowsPhone/CE好。

Proteus的程序包在100MB大小内,而Multisim则是好几百MB,相比Proteus程序大小大了近十倍。

所以说,功能上,Multisim要强大得多,它专注于多功能的模电、数电仿真,也就是说你可以画一个比较复杂的模电电路,各种信号的处理,Multisim完成可以胜任,而Proteus则更专注于MCU(含8051系列,PIC系统、AVR系列、ARM系列)的功能仿真,仿真MCU时很方便也很准确,但像前面据说的那种繁杂的信号处理,Proteus相对就弱一些,比如仿真时处理速度会很慢,慢到1uS都是有可能的。

总结一下,Multisim是全能的奥运选手,而Proteus是专项的奥运选手。

proteus 做8086仿真需要做一些设置才能仿真,和51不同。做51单片机用的是keil生成的HEX文件,8086一般做汇编用的是汇编软件生成的文件EXE和bin或com的文件。8086没有内存贮器,仿真需要设置内存启始地址,内存的大小和外部程序加载到内存的地址段。仿真一定要设置内存,时钟默认是1MHz,设置好后添加由emu8086或MASM32或其他软件生成的扩展名为com,bin,exe的文件。proteus自动加载到设置好的内存段中。(编译软件emu8086与proteus仿真)

1,找到需要的元件,芯片。

2,根据原理图,画出仿真图。

3,写程序,并编译出HEX代码文件。

4,把HEX代码文件加载到单片机中。

5,运行仿真,就看到结果了。

如下图,就是一个仿真的实例。

更详细的 *** 作步骤,可上网下载有关的教程看一下。

1 利用Proteus软件绘制单片机最小系统,发光二极管D1经限流电阻接到P11,利用?

方法/步骤

1

首先打开proteus系统软件,网上找到最小系统的原理图,按原理绘制。

2

在proteus中的p中选择所需要的零件有电阻RES、电容CAP、电解电容CAP-ELEC、复位开关BUTTON、晶振CRYSTAL、最后是单片机AT89C51

END

方法/步骤2

接下来就开始在窗口把所需要的元件都放在绘图窗口中。首先绘制复位电路。

复位电路绘制完成绘制晶振电路,晶振是与两个并联的电容串联在电容中间接地。

最后在EA出画出+5v电源。在晶振与复位电路中画出电源和接地符号。

把各个元器件的属性改下,改成自己需要的大小,比如电阻的10K。

proteus中单片机的电源是默认就被接好的不需要我们绘制。最后单片机最小系统就绘制完成。

51单片机最小系统

下面就图2 所示的单片机最小系统各部分电路进行详细说明。

1 时钟电路

在设计时钟电路之前,让我们先了解下51 单片机上的时钟管脚:

XTAL1(19 脚) :芯片内部振荡电路输入端。

XTAL2(18 脚) :芯片内部振荡电路输出端。

XTAL1 和XTAL2 是独立的输入和输出反相放大器,它们可以被配置为使用石英晶振的片内振荡器,或者是器件直接由外部时钟驱动。图2 中采用的是内时钟模式,即采用利用芯片内部的振荡电路,在XTAL1、XTAL2 的引脚上外接定时元件(一个石英晶体和两个电容),内部振荡器便能产生自激振荡。一般来说晶振可以在12 ~ 12MHz 之间任选,甚至可以达到24MHz 或者更高,但是频率越高功耗也就越大。在本实验套件中采用的110592M 的石英晶振。和晶振并联的两个电容的大小对振荡频率有微小影响,可以起到频率微调作用。当采用石英晶振时,电容可以在20 ~ 40pF 之间选择(本实验套件使用30pF);当采用陶瓷谐振器件时,电容要适当地增大一些,在30 ~ 50pF 之间。通常选取33pF 的陶瓷电容就可以了。

另外值得一提的是如果读者自己在设计单片机系统的印刷电路板(PCB) 时,晶体和电容应尽可能与单片机芯片靠近,以减少引线的寄生电容,保证振荡器可靠工作。检测晶振是否起振的方法可以用示波器可以观察到XTAL2 输出的十分漂亮的正弦波,也可以使用万用表测量( 把挡位打到直流挡,这个时候测得的是有效值)XTAL2 和地之间的电压时,可以看到2V 左右一点的电压。

2 复位电路

在单片机系统中,复位电路是非常关键的,当程序跑飞(运行不正常)或死机(停止运行)时,就需要进行复位。

MCS-5l 系列单片机的复位引脚RST( 第9 管脚) 出现2个机器周期以上的高电平时,单片机就执行复位 *** 作。如果RST 持续为高电平,单片机就处于循环复位状态。

复位 *** 作通常有两种基本形式:上电自动复位和开关复位。图2 中所示的复位电路就包括了这两种复位方式。上电瞬间,电容两端电压不能突变,此时电容的负极和RESET 相连,电压全部加在了电阻上,RESET 的输入为高,芯片被复位。随之+5V电源给电容充电,电阻上的电压逐渐减小,最后约等于0,芯片正常工作。并联在电容的两端为复位按键,当复位按键没有被按下的时候电路实现上电复位,在芯片正常工作后,通过按下按键使RST管脚出现高电平达到手动复位的效果。一般来说,只要RST 管脚上保持10ms 以上的高电平,就能使单片机有效的复位。图中所示的复位电阻和电容为经典值,实际制作是可以用同一数量级的电阻和电容代替,读者也可自行计算RC 充电时间或在工作环境实际测量,以确保单片机的复位电路可靠。

3 EA/VPP(31 脚) 的功能和接法

51 单片机的EA/VPP(31 脚) 是内部和外部程序存储器的选择管脚。当EA 保持高电平时,单片机访问内部程序存储器;当EA 保持低电平时,则不管是否有内部程序存储器,只访问外部存储器。

对于现今的绝大部分单片机来说,其内部的程序存储器(一般为flash)容量都很大,因此基本上不需要外接程序存储器,而是直接使用内部的存储器。

在本实验套件中,EA 管脚接到了VCC 上,只使用内部的程序存储器。这一点一定要注意,很多初学者常常将EA 管脚悬空,从而导致程序执行不正常。

4 P0 口外接上拉电阻

51 单片机的P0 端口为开漏输出,内部无上拉电阻。所以在当做普通I/O 输出数据时,由于V2 截止,输出级是漏极开路电路,要使“1”信号(即高电平)正常输出,必须外接上拉电阻。

另外,避免输入时读取数据出错,也需外接上拉电阻。在这里简要的说下其原因:在输入状态下,从锁存器和从引脚上读来的信号一般是一致的,但也有例外。例如,当从内部总线输出低电平后,锁存器Q = 0, Q = 1,场效应管V1 开通,端口线呈低电平状态。此时无论端口线上外接的信号是低电平还是高电平,从引脚读入单片机的信号都是低电平,因而不能正确地读入端口引脚上的信号。又如,当从内部总线输出高电平后,锁存器Q = 1, Q = 0,场效应管V1 截止。如外接引脚信号为低电平, 从引脚上读入的信号就与从锁存器读入的信号不同。所以当P0 口作为通用I/O 接口输入使用时,在输入数据前,应先向P0 口写“1”,此时锁存器的Q 端为“0”,使输出级的两个场效应管V1、V2 均截止,引脚处于悬浮状态,才可作高阻输入。

总结来说:为了能使P0 口在输出时能驱动NMOS 电路和避免输入时读取数据出错,需外接上拉电阻。在本实验套件中采用的是外加一个10K 排阻。此外,51 单片机在对端口P0—P3 的输入 *** 作上,为避免读错,应先向电路中的锁存器写入“1”,使场效应管截止,以避免锁存器为“0”状态时对引脚读入的干扰。

5 LED 驱动电路

细心的读者可能已经发现,在最小系统中,发光二极管(LED)的接法是采取了电源接到二极管正极再经过1K 电阻接到单片机I/O 口上的(见图4 中的接法1)。为什么这么接呢?首先我们要知道LED 的发光工作条件,不同的LED 其额定电压和额定电流不同,一般而言,红或绿颜色的LED 的工作电压为17V~24V,蓝或白颜色的LED 工作电压为27~42V, 直径为3mm LED 的工作电流2mA~10mA。在这里采用红色的3mm 的LED。其次,51 单片机(如本实验板中所使用的STC89C52单片机)的I/O 口作为输出口时,拉电流(向外输出电流)的能力是μA 级别,是不足以点亮一个发光二极管的。而灌电流(往内输入电流)的方式可高达20mA,故采用灌电流的方式驱动发光二极管。当然,现今的一些增强型单片机,是采用拉电流输出(接法2)的,只要单片机的输出电流能力足够强即可。另外,图2中的电阻R1为1K 阻值,是为了限制电流,让发光二极管的工作电流限定在2mA~10mA。

怎么用proteus来仿真51

用proteus来仿真51的步骤:

工具/原料:Proteus,keil c51

1、首先我们打开Proteus软件,点击左边菜单栏的P按钮,然后再搜索框里输入80c51,选择第一个就是80c51单片机;

2、然后在搜索框里面输入led,找到Optoelectronics,然后再里面选择LED-RED,红色的led,当然其他颜色也可以;

3、接着我们点击鼠标右键可以选择led为合适的方向,方便我们的绘图;

4、然后我们放上res电阻,电阻默认是10k,对于led还是比较大的,我们双击那个10k,将其改为1k或者再小一点,这样led就要亮一些;

5、然后开始添加电源,然后我们双击电源,将String改为GND也就是接地;

6、接下来没有画晶振电路、复位电路以及电源,在Proteus仿真中,默认已经连接,所以我们不用管它,实际电路中一定要连接才可以的;

7、以下是led流水灯代码,我们将其编译生成hex文件;

8、然后我们在Proteus里面双击单片机,加载单片机流水灯程序,并把晶振改为12Mhz;

9、最后我们点击下面那个三角形符号就可以允许仿真了,仿真的时候引脚接口会有电压颜色显示,可以看到流水灯已经在走了。

proteus怎么连接单片机最小系统

连接单片机最小系统应该可以通过相关的网络配置信息找到相关参数,然后进行虚拟参数的设定,实现链接的效果

这个程序很简单,我觉得你自己在我的指导下也可以写出来,这样可以增加你的记忆,也可以多学一点东西。就是不明白为什么要从4000H开始执行,这样你的电路就要增EPROM(或EEPROM)了。

程序你可以这样写,

1、让一位亮(MOV P10,#0H )

2、闪的次数(MOV R1,#5H ) 命令后面不写了

3、调用2秒延时程序。

4、取反 。

5、调用2秒延时程序。

6、减一判断R1是否到0,没到返回4,到了向下执行。

7、左移一位。

8、转移到2。这样就完成一个循环了。

至于仿真软件proteus 那就简单了,你自己画,如果不会画,找一个图自己修改一下就可以了。

这样写好玩吧?我也好长时间没有用汇编写了,命令有一点小的瑕疵(取反的位数),你可以自琢磨一下再写。

以上就是关于proteus8professional怎么运行程序全部的内容,包括:proteus8professional怎么运行程序、用Keil编写程序:我已经用Proteus画好图了,很简单的程序,老师留的作业,在线等、proteus跟multisim哪个更好等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/zz/9857535.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-05-02
下一篇2023-05-02

发表评论

登录后才能评论

评论列表(0条)

    保存