51单片机 流水灯 哪里错了?? 新手求

2019-03-24 17:23发布

#include<reg52.h>
#include<intrins.h>
#define        uint        unsigned        int
#define        uchar        unsigned        char
uchar        led;
void        delay(uint        z)
void        main()
{        led=oxfe;
        P1=led;
        while(1)
        {        led=_crol_(led,1);
                delay(300);
                led=1;
        }

}
void        delay(uint        z)
{        uchar        x,y;
        for(x=z;x>0;x--)
                for(y=110;y>0;y--);

}

此帖出自小平头技术问答
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
8条回答
zhangxiyi5277
1楼-- · 2019-03-25 01:32
楼主你oxfe 能编译通过吗??不是0xfe吗。
huaiqiao
2楼-- · 2019-03-25 03:13
 精彩回答 2  元偷偷看……
lcofjp
3楼-- · 2019-03-25 07:19
void        delay(uint        z);
第一个函数声明后面少个分号,在这里提醒你一下,要学会发帖,大家都不是编译器,肉眼看不出你程序有什么问题,至少要把出错信息写一下。
旧少年
4楼-- · 2019-03-25 09:11
huaiqiao 发表于 2016-12-14 21:50
少年,有几点 需要你注意:
1、一定要搞清楚是高电平点亮led,还是低电平点亮led,这个很重要;
2、_crol ...

谢谢     会改的
旧少年
5楼-- · 2019-03-25 09:49
 精彩回答 2  元偷偷看……
billliu66
6楼-- · 2019-03-25 14:36
#include<reg52.h>
#include<intrins.h>
#define        uint        unsigned        int
#define        uchar        unsigned        char
uchar        led;
void        delay(uint        z);
void        main()
{        led=oxfe;
        P1=led;
        while(1)
        {        
               led=_crol_(led,1);
                P1=led;
                delay(300);
               // led=1;
        }

}
void        delay(uint        z)
{        uchar        x,y;
        for(x=z;x>0;x--)
                for(y=110;y>0;y--);

}
照以上修改,如是低电平驱动,应是没问题的。

一周热门 更多>