求大神帮我看一下,为什么灯总是亮着不会闪啊!!

2019-07-15 12:35发布

#include<reg52.h>
#include<intrins.h>
#define uint unsigned int
#define uchar unsigned char
uchar temp,num1,num;
void delay() ;
void main()
{
         
        P2=0x00;
        delay();                                          
        P2=0xff;
        temp=0xfe;
        while(1)
        {
                P2=temp;
                delay();
            temp=_crol_(temp,1);
        }
}
void delay()
{
        for(num1=10000;num1>0;num1--)
                for(num=600;num>0;num--);
}


友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
11条回答
duands0201
2019-07-16 12:21
uchar 最大是255,赋值不符合要求.我上机试了下你的程序.修改一下,能看到效果了:


#include<reg52.h>
#include<intrins.h>
#define uint unsigned int
#define uchar unsigned char

uchar temp,num1,num;
void delay() ;

void main()
{

        P1=0x00;
        delay();
        P1=0xff;
        temp=0xfe;
        while(1)
        {
                P1=temp;
                delay();
            temp=_crol_(temp,1);
        }
}
void delay()
{
        for(num1=200;num1>0;num1--)
                for(num=200;num>0;num--);
}

一周热门 更多>