⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 beep.c

📁 这是一个PIC单片机的实时操作系统
💻 C
字号:

#ifndef  _beep_c
#define   _beep_c

#include "config.H"
 BEEP_CONTROL beepBuf;
 void beepControl(void);
/***********************************
功能:蜂鸣器控制
入口:无
出口:无	     
************************************/
  void beepControl(void)
{
 	//static uint8 beepBufBak;
	//static uint8	beepCounter;
   // static uint8 beepBuf;
//   	MESSAGE msg;	
	//if(!Message(&msg))
//		return;
//	if(msg==MES_BEEP)
		nop;
	    nop;
	  nop;
	if(beepBuf==BEEP_NULL)
		return;
	if(beepBufBak!=beepBuf)//状态变化
		{
		if((beepBuf&BEEP_CLOSE)!=0)
			{
			goto close;		
		
			}
		else if((beepBuf&BEEP_OPEN)!=0)
			{
			BEEP_CON=BEEP_OPEN_CON;
			goto open;
			}
		else
			{
			beepBufBak=beepBuf;
			BEEP_CON=BEEP_OPEN_CON;;
			beepCounter=0;
			}

		}
	else
		{
		beepCounter++;
		if((beepBuf&BEEP_LONG)!=0)//长嘀
			{
			if(beepCounter==60)
				{
				goto close;
				}
			}
		else if((beepBuf&BEEP_ONE)!=0)//一声
			{
			if(beepCounter==10)
				{
				close:
				BEEP_CON=BEEP_CLOSE_CON;
				open:
				beepBuf=BEEP_NULL;
				beepBufBak=BEEP_NULL;
				return;
				}
			}	
		else if((beepBuf&BEEP_THREE)!=0)//三声
			{
			if(beepCounter==10)
				BEEP_CON=BEEP_CLOSE_CON;
			if(beepCounter==20)
				BEEP_CON=BEEP_OPEN_CON;
			if(beepCounter==30)
				BEEP_CON=BEEP_CLOSE_CON;
			if(beepCounter==40)
				BEEP_CON=BEEP_OPEN_CON;
			if(beepCounter==50)
				goto close;
			}
		else //连续嘀
			{
			if(beepCounter==20)
				BEEP_CON=BEEP_CLOSE_CON;
			if(beepCounter==200)
				{
				BEEP_CON=BEEP_OPEN_CON;
				beepCounter=0;
				}
			}
		}
	
}	


#endif



⌨️ 快捷键说明

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