输出控制LED亮度亮度
PWM输出控制
这里给大家分享了一个PWM输出控制LED亮度的程序设计
#include
#define uchar unsigned char
#define uint unsigned int
#define LED P2 //定义LED端口
sbit k1=P3^5;
sbit k2=P3^4;
sbit k3=P3^3;
sbit k4=P3^2;
void k1d();
void k2d();
void k3d();
void k4d();
uchar scale;//用于保存占空比的输出0的时间份额,总共10份
//功能:延时1毫秒
//入口参数:x
//出口参数:无
//说明:晶振为12M
void delay(uint x)
{
uint i,j;
for(i=0;i scale--;
if(scale==255)
scale = 0;
while(!k2);
}
}
}
void k3d()
{
if(!k3)
{
delay(20);
if(!k3)
{
scale++;
if(scale==11)
scale = 10;
while(!k3);
}
}
}
void k4d()
{
if(!k4)
{
delay(20);
if(!k4)
{
LED=0;
scale=10;
while(!k4);
}
}
}