当前位置:首页 » 编程软件 » keil不能编译怎么解决

keil不能编译怎么解决

发布时间: 2022-01-08 19:48:12

① 程序在KEIL中不能编译

1、确定”之前的程序“是能在某个Keil环境中正确编译的!

2、查看一下编译错误码,很多情况下是缺少文件。
注意,一般情况下,不要指望在VC中编写的程序能在Keil中编译。

② Keil无法编译

帮你改了下! 自己在改改吧!

#include
#include
#define uint unsigned int
#define uchar unsigned char
#define BLKN 2 /*列存贮器数8*8行数*/
sbit E1 =P3^4; //E1为0开列(col)输出显示允许控制信号端口
sbit ST_CP =P3^2; //ST_CP 上升沿--移位寄存器的数据进入数据存储寄存器 输出锁存器的时钟信号端口
sbit MR =P3^3;//MR 为0将移位寄存器的数据清0
sbit key1 =P0^0;
sbit key2 =P0^1;
sbit soundring=P0^7;
uchar songndring=0;//add by mrli
uchar Soundring=0;//add by mrli

uchar t1;
uint key,spd;
void delay(unsigned int);
uchar data dispram[32];
uchar code table[]={ 0xC0,0xF9,0xA4,0xB0,0x99,0x92,0x82,0xF8, 0x80,0x90,0x88,0x83,0xC6,0xA1,0x86,0x8E,0xFF};
uchar code donghua[][1]={0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0x7F };//change by mrli

void delay(uint dt);

void main( )
{
uchar num,cur,tmp,nums=sizeof(donghua)/32;
SCON = 0x01;
TMOD = 0x01;
TH1=(65536-50000)/256;
TL1=(65536-50000)%256;
TR0 = 1;
TR1=1;
EA=1;
ET0=1;
ET1=1;
IT0=1;
P1= 0xc0;
key=1;
songndring=1;
P2=table[1];

while (1)
{
delay(2000);
spd=100-key*10;
for(tmp=0;tmp<1;tmp++)
{
for(num=0;num<nums;num++)
{
for(cur=0;cur<32;cur++) //显示
{
dispram[cur]=donghua[num][cur];
delay(spd);
}
}
}
}
}

void delay(uint dt)
{
uchar it,jt;
for(it=dt;it>0;it--)
for(jt=110;jt>0;jt--);
}

void leddisplay(void) interrupt 1 using 1
{
static uchar col=0;
TH0 = 0xf8;
TL0 = 0x30;
MR=0; //清理行输出,将移位寄存器的数据清0
MR=1;
SBUF = dispram[col*2]; //串行发送显示数据
while(TI==0); //等待发送完毕
T1 = 0;
SBUF = dispram[col*2+1]; //送显示数据
while(TI==0); //等待发送完毕
T1 = 0;
E1 = 1; //消隐
P1 = 0x00; //行号端口清0
P1 = 0x00; //行号端口清0
E1 = 0; //打开显示
ST_CP =1; //显示数据打入输出锁存器
ST_CP = 0; //锁存显示数据
P1 = col; //写入行号
col=(col+1)%16;

}

void keys() interrupt 3
{
TH1=(65536-50000)/256;
TL1=(65536-50000)%256;
t1++;
if(t1==10)
{
t1=0;
if(key1==0)
{
delay(2);
if(key1==0)
key--;
if(key<2)
key=1;
while(!key1);
delay(2);
while(!key1);
soundring=0;
delay(450);
};
if(key2==0)
{
delay(2);
if(key2==0)
key++;
if(key>8)
key=9;
while(!key2);
delay(2);
while(!key2);
soundring=0;
delay(450);
};
Soundring=1;
P2=table[key];

}
}

③ KEIL不能编译的程序

帮你改了下! 自己在改改吧!

#include <AT89X52.H>
#include <intrins.h>
#define uint unsigned int
#define uchar unsigned char
#define BLKN 2 /*列存贮器数8*8行数*/
sbit E1 =P3^4; //E1为0开列(col)输出显示允许控制信号端口
sbit ST_CP =P3^2; //ST_CP 上升沿--移位寄存器的数据进入数据存储寄存器 输出锁存器的时钟信号端口
sbit MR =P3^3;//MR 为0将移位寄存器的数据清0
sbit key1 =P0^0;
sbit key2 =P0^1;
sbit soundring=P0^7;
uchar songndring=0;//add by mrli
uchar Soundring=0;//add by mrli

uchar t1;
uint key,spd;
void delay(unsigned int);
uchar data dispram[32];
uchar code table[]={ 0xC0,0xF9,0xA4,0xB0,0x99,0x92,0x82,0xF8, 0x80,0x90,0x88,0x83,0xC6,0xA1,0x86,0x8E,0xFF};
uchar code donghua[][1]={0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0x7F };//change by mrli

void delay(uint dt);

void main( )
{
uchar num,cur,tmp,nums=sizeof(donghua)/32;
SCON = 0x01;
TMOD = 0x01;
TH1=(65536-50000)/256;
TL1=(65536-50000)%256;
TR0 = 1;
TR1=1;
EA=1;
ET0=1;
ET1=1;
IT0=1;
P1= 0xc0;
key=1;
songndring=1;
P2=table[1];

while (1)
{
delay(2000);
spd=100-key*10;
for(tmp=0;tmp<1;tmp++)
{
for(num=0;num<nums;num++)
{
for(cur=0;cur<32;cur++) //显示
{
dispram[cur]=donghua[num][cur];
delay(spd);
}
}
}
}
}

void delay(uint dt)
{
uchar it,jt;
for(it=dt;it>0;it--)
for(jt=110;jt>0;jt--);
}

void leddisplay(void) interrupt 1 using 1
{
static uchar col=0;
TH0 = 0xf8;
TL0 = 0x30;
MR=0; //清理行输出,将移位寄存器的数据清0
MR=1;
SBUF = dispram[col*2]; //串行发送显示数据
while(TI==0); //等待发送完毕
T1 = 0;
SBUF = dispram[col*2+1]; //送显示数据
while(TI==0); //等待发送完毕
T1 = 0;
E1 = 1; //消隐
P1 = 0x00; //行号端口清0
P1 = 0x00; //行号端口清0
E1 = 0; //打开显示
ST_CP =1; //显示数据打入输出锁存器
ST_CP = 0; //锁存显示数据
P1 = col; //写入行号
col=(col+1)%16;

}

void keys() interrupt 3
{
TH1=(65536-50000)/256;
TL1=(65536-50000)%256;
t1++;
if(t1==10)
{
t1=0;
if(key1==0)
{
delay(2);
if(key1==0)
key--;
if(key<2)
key=1;
while(!key1);
delay(2);
while(!key1);
soundring=0;
delay(450);
};
if(key2==0)
{
delay(2);
if(key2==0)
key++;
if(key>8)
key=9;
while(!key2);
delay(2);
while(!key2);
soundring=0;
delay(450);
};
Soundring=1;
P2=table[key];

}
}

④ keil软件安装后怎么不能编译,还有许多功能都不能用急

1>可能是你没有激活,所以无法编译,功能也不能全部使用 ,2>是你不会使用,没有创建好文件工程,所以无法编译。不过看你这种情况,应该是没激活,你再看一下

⑤ 我用keil打开现有工程时出现了这个东西,然后工程可以打开,但是编译不了,怎么解决

你是不是在安装KEIL的时候没有安装到它的默认目录啊,建议你装KEIL的时候就使用默认的C:\Keil。KEIL就这个脾气,不装老地方,指不定就会冒出些莫名其妙的问题。

⑥ KEIL 没法编译是怎么回事,按钮都是灰色的!~

KEIL 要先建立工程,选择MCU,然后把C源程序(*.C)加入到工程中才能编译,不能直接对C源程序编译。

⑦ keil编译显示程序太大~编译不了怎么办

这种情况已经有一阵时间了,KEIL显示破解成功,其实是假的。现在我的做法是拿一个大程序来编译,如果编译通过,那就是破解成功,如果还有限制,那就继续破。我以前的KEIL C251破了半天,算了N个码,个个都显示已成功,可实际上直到N+1次才编译通过,我一同事更倒霉,整整算了3天。所以,破这玩意没技术,就俩字,坚持。

⑧ keil软件不能编译

你下载的keil安装包里有license吗,没有的话你要重下一个再安装,有的时候360杀毒软件会误认为license为病毒,安装时把杀毒软件关掉就ok了

⑨ keil 程序过大,无法编译,怎么解决

这种情况已经有一阵时间了,keil显示破解成功,其实是假的。现在我的做法是拿一个大程序来编译,如果编译通过,那就是破解成功,如果还有限制,那就继续破。我以前的keil
c251破了半天,算了n个码,个个都显示已成功,可实际上直到n+1次才编译通过,我一同事更倒霉,整整算了3天。所以,破这玩意没技术,就俩字,坚持。

⑩ keil无法编译怎么回事

你没有激活这个软件«keil»
,未注册的只能编译2k以内的程序

热点内容
php字符串引号 发布:2024-09-21 08:17:03 浏览:783
androidduration 发布:2024-09-21 08:17:03 浏览:402
大话西游2华山论剑什么时候开的服务器 发布:2024-09-21 08:00:15 浏览:530
编程马鞍数 发布:2024-09-21 07:48:32 浏览:726
新建文件夹dos命令 发布:2024-09-21 07:44:13 浏览:131
舞蹈解压介绍 发布:2024-09-21 07:40:04 浏览:973
qq如何显示密码 发布:2024-09-21 07:22:26 浏览:566
安卓导航如何调大mlc音量 发布:2024-09-21 06:59:21 浏览:34
洛奇解压中发生错误 发布:2024-09-21 06:53:30 浏览:293
解压球是什么 发布:2024-09-21 06:53:29 浏览:539