bled.c

来自「51单片机实验例程」· C语言 代码 · 共 67 行

C
67
字号
/******************************************************************/
/* 	      按键状态显示试验										  *
/*	             												  *
/*  连接方法:连接JP10(P0)与JP5(按钮接口)          			  *
/*			      JP11 (P2)与JP1(LED接口) 						  *
																  *
/*按键则点亮LED灯,8路指示灯接p0口         						  *
/******************************************************************/
#include <reg51.h>
#include <intrins.h>

sbit BEEP = P1^5;
sbit RELAY = P1^4;

sbit  K1 = P0^0; sbit  K2 = P0^1;
sbit  K3 = P0^2; sbit  K4 = P0^3;
sbit  K5 = P0^4; sbit  K6 = P0^5;

void beep();
/*********************************************************/
main()
{
   
   while(1)
   {
   	  P2 = 0xff;
   	  if(K1==0)
   	  P2 = 0xfe;
	 
   	  if(K2 == 0)
   	  P2 = 0xfd;

   	  if(!K3)
   	  P2 = 0xfb;

   	  if(!K4)
   	  P2 = 0xf7;

	  	  
	  if (!K5 )
	   beep(); 	//喇叭发声   

	  RELAY = 1;
	  if (!K6 )
	  RELAY = 0;  //通过了反相器
	
   }
}


/**********************************************************/
void beep()
{
  unsigned char i , j;
  for (i=0;i<100;i++)
   {
  
   BEEP=!BEEP;                 //BEEP取反
   for (j = 0 ; j<250 ; j++)   //需要产生方波
    _nop_();
   } 
  BEEP=1;                      //关闭蜂鸣器
}



⌨️ 快捷键说明

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