竞走十年的蚂蚁
2021-01-20 16:13
采纳率: 33.3%
浏览 51

keil5改错,编程小白求大神指点

keil5写程序时总是说>前面少分号,但是我的程序里有分号啊,程序如下,报错在第20行for

#include<reg52.h>
#define uint unsigned int
#define uchar unsigned char
sbit D1=P2^0;
void main()
{
   while(1)
  {
     D1=0;
	 delay();
	 D1=1;
	 delay();
	 
  }

}
void delay();
{
uint x,y;
for(x=100;x>0;x--)
	{
for(y=2000;y>=0;y--);
	}
}

 

  • 点赞
  • 写回答
  • 关注问题
  • 收藏
  • 邀请回答

7条回答 默认 最新

  • 智者知已应修善业 2021-01-20 17:06
    已采纳

    #include<reg52.h>
    #define uint unsigned int
    #define uchar unsigned char
    sbit D1=P2^0;
    void delay();
    void main()
    {
       while(1)
      {
         D1=0;
         delay();
         D1=1;
         delay();
         
      }
     
    }
    void delay()
    {
    uint x,y;
    for(x=100;x>0;x--)
        {
    for(y=2000;y>=0;y--);
        }
    }

    点赞 评论
  • 智者知已应修善业 2021-01-20 16:43

    延时函数放在主函数后面的在主函数前面要写函数原形

    点赞 评论
  • 智者知已应修善业 2021-01-20 16:44

    void delay();这里就是分号

    点赞 评论
  • 竞走十年的蚂蚁 2021-01-20 16:56

    所以说缺少分号是指void delay()后面的分号么,那我源代码这里是有分号的呀

    点赞 评论
  • 竞走十年的蚂蚁 2021-01-20 17:29

    大神,还想问一个问题,这个代码没有错误了,但是为什么下载到单片机里是第一个led灯常亮啊,这个代码明明是一个流水灯代码

    点赞 评论
  • 智者知已应修善业 2021-01-21 09:10

    调节延时试看

    点赞 评论
  • 竞走十年的蚂蚁 2021-01-25 17:40

    解决了,谢谢大神

    点赞 评论

相关推荐 更多相似问题