用proteus professional仿真软件与keil单片机编译软件编写一段代码

1显示学号例如0127;
2、47倒计时 倒计结束时蜂鸣器响1秒
3正常显示时间(如00:00 过一分钟是00:01 不需要与北京时间同步)
4.可以调整时钟和分钟
5.可以设置两个闹钟
以下是我写的代码求修改有图和元器件名称谢谢各位大神求教
#include<reg51.h>
unsigned char msec,sec=47,hour,min;
unsigned char led[]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90};
sbit k2=P3^2;
sbit k3=P3^3;
sbit k4=P3^4;
sbit k5=P3^5;
sbit dp=P0^7;
void delay(unsigned char i)
{
unsigned char j,k;
for(k=0;k<i;k++)
for(j=0;j<255;j++);
}
void delay1s()
{ unsigned char i;

for(i=0;i<20;i++)
{
TH0=0x3c;
TL0=0xb0;
TR0=1;
while(!TF0);
TF0=1;
}
}
void T0_INT()interrupt 1
{
TH0=0x3c;
TL0=0xb0;
msec++;
if(msec==20)
{
msec=0;
sec--;
}

}
void xuehao()
{
unsigned char w,i;
w=0x80;
for(i=0;i<4;i++)
{
P2=~w;
P0=led[i];

if(i==3)
{
P0=led[i+4];
}
w>>=1;
}
}
void daoji()
{
P2=~0x10;
P0=led[sec%10];
delay(2);
P2=~0x20;
P0=led[sec/10];
delay(2);
if(sec==0){TR0=0;P2=0xf7;delay(200);P2=0xff;delay(200);}
}
void fenzhong()
{ min=0;
P2=~0x10;
P0=led[min%10];
delay(2);
P2=~0x20;
P0=led[min/10];
delay(2);
}
void shizhong()
{ hour=0;
P2=~0x40;
P0=led[hour%10];
delay(2);
P2=~0x80;
P0=led[hour/10];
delay(2);
}
void cs() //调时钟
{
if(k3==0)
{
hour++;
if(hour==24){hour=0;}
}

}
void cf()//调 分钟
{
if(k4==0)
{
min++;
}
}
naozhong()
{

}
void main()
{unsigned int i;
unsigned int n;
TMOD=0x01;
TH0=0x3c;
TL0=0xb0;
EA=1;
ET0=1;
P3=0xff;
while(1) {
for(i=0;i<100;i++)
{
xuehao();

}

if((k2&&k3&&k4&&k5)==0)
{
if(k2==0)
{TR0=1;
while(1)
{
daoji();

}
}
if(k3==0)
{dp=0xf7;

shizhong();fenzhong();
while(1)
{
n++;
delay1s();
if(n==60)
{
min++;
if(min==60){hour++;min=0;}
}
if(hour==24){hour=0;}

cs();cf();
naozhong();
}
}
}
}
}

第1个回答  2015-01-12

可以给你完成一份

第2个回答  2015-01-13
你有什么要求?

(keli和Protus仿真软件)单片机中断实验程序代码,小部分有错误,求修改...
为读取下一个段码做准备CJNEA,#10,ST1 \/\/ A=10:往下走,否则转到ST1SJMPST0 \/\/开始下一轮 0~8 的显示INT0S:PUSHACC \/\/该句是添加的,用于现场保护MOVA,#0LOOP:INCAPUSHACCACALLSEG7MOVP2,

使用Keil与Proteus联合仿真调试单片机程序
1. 从官网获取并安装Proteus,建议安装在D盘的install文件夹,按照指示进行,安装完成后桌面上会出现快捷方式。2. 同时下载Keil安装包和注册机,新建文件夹安装。在Keil安装时,注意填写个人信息,最后通过注册机破解并获取序列号。3. 为了将Proteus和Keil关联,打开TOOLS.INI文件,添加TDRV11相关驱动信息,...

proteus和keil怎么连起来用
Proteus和Keil可以通过配置相应的设置和选项,实现联合仿真,从而在Proteus中模拟单片机系统的同时,能够实时地反映Keil中编写的程序代码的运行情况。Proteus是一款强大的电路设计与仿真软件,它支持模拟电路、数字电路以及微控制器系统的设计与仿真。而Keil则是一款专业的嵌入式开发环境,主要用于编写、调试和测试...

keil如何与Proteus联合仿真?
1、假若KeilC与Proteus均已正确安装在C:\\Program Files的目录里,把C:\\Program Files\\Labcenter Electronics\\Proteus 6 Professional\\MODELS\\VDM51.dll(可能没有这个文件,本压缩包里有)复制到C:\\Program Files\\keilC\\C51\\BIN目录中。2、用记事本打开C:\\Program Files\\keilC\\C51\\TOOLS.INI文件(这里...

用proteus画完电路图后,在Keil中编完程序后怎么保存?然后怎么仿真呢
keil中,树目录(第一级)上右键,点击“opions for...”在新窗口里面,target里面设置晶振...Output下勾选creat hex file ,再点击OK...菜单中,project 下build target...好,如果程度正确的话,就可以生成hex文件了~proteus中,在单片机在右键,属性“edit properties”,新窗口中,点program files...

proteus7如何与keil uvision2相连!
具体步骤是:1.安装好KEIL和proteus两个软件,只要两个软件都能正常运行就行,不用管联调的事情.2.用proteus画好硬件电路图.3.用keil编写好程序,编译后生成HEX文件 4.在proteus里的电路图中,双击51单片机这个元器件,弹出属性对话框,其中有一项是programe file,点击选项中的一个文件夹图标,打开文件对话框...

我在keil平台编译好的HEX文件如何导入proteus?
要将Keil编译生成的HEX文件导入Proteus进行仿真,首先打开Proteus软件,找到51单片机芯片图标。操作步骤如下:步骤一:在Proteus主界面,打开你之前保存的目标文件,确保软件连接到正确的项目。步骤二:双击51单片机图标,这将打开一个新窗口,展示下一步的导入选项。步骤三:在弹出的窗口中,找到并点击文件夹...

如何实现proteus7.6与keil4的联调
其实 proteus7与keil的联调没有多大用的,只是可以单步执行程序时看仿真效果。需要安装一个插件的。但是,多数人问这个问题是为了仿真时执行程序的。错以为不联调,仿真时的单片机就不能执行程序了。其实,两者不必要联调的。用keil 编译好了程序,生成一个HEX代码文件,在仿真图中双击单片机,点下图中画...

keil软件怎么把程序加到proteus里面?
keil的代码怎么导入proteus8在电脑上用proteus软件打开目标文件。用鼠标左键双击51单片机图标。在出现的窗口中,点击下图中的文件夹图标。在电脑文件夹中找到编译好的HEX文件导入即可。proteus里,双击单片机,跳出一对话框,点击programFile边上的文件夹按钮,找到你的那个HEX文件,就可以加载。你要下载到电路...

如何让KEIL和PROTEUS联调连接
1、PROTEUS安装好后,默认不会在桌面上产生快捷方式。先打开开始菜单,依次点击“程序、Proteus 7 Professional、ISIS 7 Professional”打开PROTEUS 2、单击图中的P,添加单片机等元件 3、像下图一样用关键字搜索,89C51,再加几个LED,因为是仿真就不用加限流电阻和晶振复位的元件了 4、把元件排列放好,...

相似回答