单片机源程序如下:
//程序名:单片机实验仪配套程序--pwm控制led亮度
//电路简介:1、P0接J1的led共阳端;
// 2、P2.6接J14单键键盘的6,作为增加亮度按钮
// 3、P2.7接J14单键键盘的7,作为减小亮度按钮
//saxmcu 20080518
#include
#define out P0
sbit INC=P2^6; //SW1
sbit DEC=P2^7; //sw2
//-----------------------------------------------------------------
void Init(void)
{
//定时器设置
TMOD=0x22; //T1=T0=定时方式2自动重装
TH1=0; //脉宽宽度
TL1=80;
TH0=55; //频率调节=0频率最低
TL0=0;
TR0=1; //先启动T0定时
ET1=1;
ET0=1;
EA=1; //总中断开
}
//定时器0中断
//频率********************************************
void Timer0(void) interrupt 1
{
out=0xff; //关led
TL0=0;
TR1=1; //打开脉宽定时
}
//定时器1中断
//脉宽********************************************
void Timer1(void) interrupt 3
{
out=~out; //开led
TR1=0; //脉宽调节结束
}
//消抖延时
delay()
{
unsigned int i;
for(i=0;i<2000;i++);
}
//**********************************
main()
{
Init();
while(1)
{
INC=1;DEC=1;
if (INC==0)
{delay();
if (INC==0)
{
if (TH1<200) TH1++;
}
}
else if (DEC==0)
{delay();
if (DEC==0)
{
if (TH1>0) TH1--;
}
}
}
}
『本文转载自网络,版权归原作者所有,如有侵权请联系删除』