light.c

来自「使用pic单片机编程」· C语言 代码 · 共 63 行

C
63
字号
#include <at89x51.h>
#define K_INC P3_4    //亮度加
#define K_DEC P3_5    //亮度减
#define LIGHT P1_4
unsigned int t _at_ 0x0030;
unsigned char T_high _at_ 0x0030;
unsigned char T_low _at_ 0x0031;


void Tini(void);

main()
{ unsigned int Illumin=125;//亮度值
 unsigned int a;
 t=0xFE0C;
 Tini();
 while(1)
 {
  if((!K_INC)&(Illumin<=250))
  {while(!K_INC)
   {++Illumin;
   if(Illumin>=250) Illumin=249;
   t=65535-4*Illumin;
   for(a=2500;a>1;a--);
  }
  }
  if((!K_DEC)&(Illumin>=1))
  {while((!K_DEC))
   {--Illumin;
   if(Illumin<=1) Illumin=1;
   for(a=2500;a>1;a--);
   t=65535-4*Illumin;
   }
  }
 }
}

void Tini(void)
{ 
TMOD=0X11;
TH0=0XFC;
TL0=0X18;
IE=0X8A;
EA=1;
TR0=1;
}

void T0int(void) interrupt 1
{TR0=TR1=0;
LIGHT=0;
TH0=0XFC;
TL0=0X18;
TH1=T_high;
TL1=T_low;
TR0=TR1=1;
}

void T1int(void) interrupt 3
{
TR1=0;
LIGHT=1;
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?