新手 想要调用子程序实现延时功能 总是报错找不到问题

2019-07-15 16:36发布

想要实现一个灯的亮灭   想要用调用子程序的方法实现 下面是程序
#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': redefinition
lesson1.c(9): error C141: syntax error near 'b'
lesson1.c - 3 Error(s), 0 Warning(s).


不知道应该如何修改  求教。。。。


友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
5条回答
小代码
2019-07-16 01:20
#include<reg52.h>
/*----------------------*/
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);               
        }
这样别写的代码效率要高!

一周热门 更多>