按键控制继电器通断程序设计
          
            时间:11-30 11:02 阅读:1480次
*温馨提示:点击图片可以放大观看高清大图
                
         
        
		  
               简介:实现功能:按键控制继电器通断
使用芯片:STC15F104E
晶振:12MHZ
波特率:9600
编译环境:Keil 
               
                        
          
            /********************************************************************
实现功能:按键控制继电器通断
使用芯片:STC15F104E
晶振:12MHZ
波特率:9600
编译环境:Keil   
*********************************************************************/
/********************************************************************/
#include<reg52.h>          //库文件
#define uchar unsigned char//宏定义无符号字符型
#define uint unsigned int  //宏定义无符号整型
/********************************************************************
                            I/O定义
*********************************************************************/
sbit P33=P3^3;   //定义单片机P3口的第3位 (即P3.3)
sbit P3_5=P3^5;
uchar keycnt=0;//按下次数值
/********************************************************************
                            延时函数
*********************************************************************/
void delay(uchar t)
{
  uchar i,j;
   for(i=0;i<t;i++)
   {
     for(j=13;j>0;j--);
     { ;
     }
   }
}
/********************************************************************
                            按键扫描函数
*********************************************************************/
void KEY() //按键扫描程序
{
uchar i,j;
if(P3_5==0)
    {
    delay(20);
    if(P3_5==0)
        {
            keycnt++;
/********************************************************************
                            按下次数判断函数
*********************************************************************/
switch(keycnt) //按下次数判断
    {
    case 1: //第一次按下
    P33=0;
    break;
    case 2: //第二次按下
    P33=1;
    keycnt=0;
    break;
    }
    while(P3_5==0);
        } 
    }
}
/********************************************************************
                            主函数
*********************************************************************/
void main()
{
    while(1)
    {
     KEY();
    }
}       
    
/********************************************************************
                              结束
*********************************************************************/