#include<reg52.h>
extern main;
void dlay(float k)
{
unsigned int h,j;
h =k*100;
while(h--)
{
for(j=8505;j>0;j--) ;
} }
void main()
{
int T,i; T=0xfe;
while(1)
{for(i=8;i>0;i--)
P1=T,T<<=1,T=T+1,dlay(0.1) ;
} }
删掉还不行:
*** ERROR L104: MULTIPLE PUBLIC DEFINITIONS
SYMBOL: MAIN
MODULE: 流水灯(位移).obj (流水灯(位移))
*** WARNING L16: UNCALLED SEGMENT, IGNORED FOR OVERLAY PROCESS
SEGMENT: ?PR?MAIN?流水灯(位移)
果然有多个文件
只留下text2.c其他全部删除
remove file删除其他的
只留下text2.c
如果要其他功能一般是.H .C成对出现
多个C里面还有多个main函数当然不行
最后再吧extern main;注释掉
编译器是keil4的
求大神,详细些
不行
的
void dlay(float k)
{
unsigned int h,j;
h =k*100;
while(h--)
{
for(j=8505;j>0;j--) ;
} }上面的float变成int型的变量就可以了,你的编译器不支持浮点运算,记得把extern main;删掉哦,把我上面发的文件按说明拷进keil中就能支持浮点运算了
还不行:
#include
void dlay(float k)
{
unsigned int h,j;
h =k*100;
while(h--)
{
for(j=8505;j>0;j--) ;
} }
void main()
{
int T,i; T=0xfe;
while(1)
{for(i=8;i>0;i--)
P1=T,T<<=1,T=T+1,dlay(0.1) ;
} }
这是你的程序在我电脑上运行正常,看你还有一个c文件,另一个c里面不能再有main函数了