标题: 照这个代码,用protues进行仿真,但是LED灯亮灭很快,没有出现呼吸效果 [打印本页]

作者: 可调电阻    时间: 2022-2-9 20:25
标题: 照这个代码,用protues进行仿真,但是LED灯亮灭很快,没有出现呼吸效果

#include<reg52.h>
typedef unsigned int uint;
typedef unsigned char uchar;

void Delay(uint t)
{
        while(--t);
}

void main(void)
{
         uchar LED;
         uint Time=600,i=0;
         LED=0xfe;

         while(1)
         {       
                 
                for(i=1;i<Time;i++)
                {
               
                        P2.0=LED;
                        LED=LED<<1;
                        if(LED == 0x00)       
                        {
                                P2.0=LED;                               
                                Delay(i);
                                P2.0=~(LED);               
                                Delay(Time-i);
                        }
                }
               
               
                for(i=Time-1;i>0;i--)
                {
               
                        P2.0=LED;
                        LED=LED<<1;
                        if(LED == 0x00)       
                        {
                                P2.0=LED;                               
                                Delay(i);
               
                                P2.0=~(LED);               
                                Delay(Time-i);
                        }
                }
        }
}



作者: 13205495918    时间: 2022-2-9 21:32
你这个呼吸灯程序看的有点迷糊
作者: dazhige    时间: 2022-2-10 00:17
P2.0=LED;一个是位,一个是字节,另外Delay函数是不是太短了?
作者: taotie    时间: 2022-2-10 10:09
用“RGBLED”模型来仿真呼吸效果不会有闪烁
作者: taotie    时间: 2022-2-10 10:21


作者: taotie    时间: 2022-2-10 10:26
dazhige 发表于 2022-2-10 00:17
P2.0=LED;一个是位,一个是字节,另外Delay函数是不是太短了?

应该是P2整个端口
作者: lkc8210    时间: 2022-2-10 15:36
taotie 发表于 2022-2-10 10:21

又学到一招了~




欢迎光临 (http://www.51hei.com/bbs/) Powered by Discuz! X3.1