专注电子技术学习与研究
当前位置:单片机教程网 >> MCU设计实例 >> 浏览文章

PIC单片机一个实用的按键处理程序

作者:佚名   来源:本站原创   点击数:  更新时间:2013年10月20日   【字体:
程序实现功能:按键调光,按键带蜂鸣器响声。

 #include<pic.h>
__CONFIG(0X034);
#define KEY RC5
#define LED RC2
int b;
void key(unsigned *p)
{
static bit valid=0;
static bit finish=0;
if(valid==0)
  {
  if(KEY==0)
    {
      if(finish==0)
       {
         finish=1;
          
         RC0=1;//蜂鸣器接这里
         b=50;
         while(b--);
          RC0=0;

        if(*p>251)
         {
         *p=0x01;
         }
        else
         {
          *p+=50;
 
         }
       }
    }
   else
   {
  valid=0;
  finish=0;
   }
  }
else
  {
 if(KEY==0)valid=1;
  }
}
void tiaoguang(unsigned PWM)
{
 unsigned char PwmH;
 unsigned char PwmL;
 unsigned char i;
 for(i=0;i<20;i++)
{
PwmH=PWM;
PwmL=255-PWM;
LED=1;
while(PwmH--);
LED=0;
while(PwmL--);
}
}
void main()
{
unsigned char PWM=0;
RC2=0;
TRISC=0b00100000;
while(1)
{
key(&PWM);
tiaoguang(PWM);
}
 
}

程序思路:设定PWM变量,每按一次,PWM增加50个单位,加到到250,归零。
关闭窗口

相关文章