想要实现一个灯的亮灭 想要用调用子程序的方法实现 下面是程序
#include <reg52.h>
#include <math.h>
#define uint unsigned uint
#define uchar unsigned uchar
sbit D0=P0^0;
void Delay1ms()
{
uint a;
uint b;
for(a=200;a>0;a--)
{
for(b=500;b>0;b--)
{
};
};
}
void main()
{
while(1)
{
D0=0;
Delay1ms();
D0=1;
Delay1ms();
};
}
keil中编译后报错
compiling lesson1.c...
lesson1.c(8): error C141: syntax error near 'a'
lesson1.c(9): error C231: 'uint': redefini
tion
lesson1.c(9): error C141: syntax error near 'b'
lesson1.c - 3 Error(s), 0 Warning(s).
不知道应该如何修改 求教。。。。
#include <math.h>
#define uint unsigned int
#define uchar unsigned char
sbit D0=P0^0;
void Delay1ms()
{
uint a;
uint b;
for(a=200;a>0;a--)
{
for(b=500;b>0;b--);
}
}
void main()
{
while(1)
{
D0=0;
Delay1ms();
D0=1;
Delay1ms();
}
你现在试下! 朋友你得先学学C语言啊,
/*----------------------*/
void DelayMs(unsigned char t)
{
while(--t)
{
Delayus(250);
Delayus(250);
}
}
void Delayus(unsigned char m)
{
while(m--);
}
void main()
{
while(1)
{
DelayMs(5);
D0=0;
DelayMs(200);
D0=1;
DelayMs(200);
}
这样别写的代码效率要高!
缺少声明 加上这段就行了 #include <math.h>
解决了
忘记加头文件
打扰。。。。。
一周热门 更多>