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

📄 spk_task.c

📁 c8051f020实现4个 产UART 口
💻 C
字号:
#include "all.h"


void   Sound_Di() ;
void   Sound_DiDi() ;
void   Sound_DiDiDi() ;

bit Sound_Di_B=0;             //响一声音便能位
bit Sound_DiDi_B=0;        //响二声音便能位
bit Sound_DiDiDi_B=0;       //响三声音便能位

void GSM_ATTAND (void) _task_ GSMATTAND  {
  	 uchar i;
	 
        while (1) {
		                 os_wait2(K_TMO,2);
		                  Dog_GSMATTAND_cnt=0; //看门狗计数器



                               if( Sound_Di_B)  {   //发生布防

                                      Sound_Di()  ;
                                      Sound_Di_B=0;
					  	
				  }

				  if( Sound_DiDi_B)  {  //发生撤防
	                                      //得到权限
							 while(KEY_TX_Right_B==0 )     os_wait2(K_TMO,2);
							 KEY_TX_Right_B=0;
							 // os_wait2(K_TMO,100);
							 DaBao_JTX_0x24_And_Send(52, &i, 0);  //52	发生撤防
							// os_wait2(K_TMO,200);
							 KEY_TX_Right_B=1;										 
						   //放弃到权限
			   
	                                      Sound_DiDi() ;
                                   	   Sound_DiDi_B=0;
					 				  
				  }

				   if( Sound_DiDiDi_B)  {  //51	 发生在家布防
	                                 //得到权限
						 while(KEY_TX_Right_B==0 )     os_wait2(K_TMO,2);
						 KEY_TX_Right_B=0;
						 // os_wait2(K_TMO,100);
						 DaBao_JTX_0x24_And_Send(51, &i, 0);  //51	 发生在家布防
						// os_wait2(K_TMO,200);
						 KEY_TX_Right_B=1;										 
					  //放弃到权限	
	                                  Sound_DiDiDi() ;
	                                  Sound_DiDiDi_B=0;
						
				  }

                             if(Second_Di==0xff)  {       
				 	        Second_Di =0 ; 

						//以下是布防延时处理
		                             if( Para_all_True.Work_Mode==5)  {
								  Flash_Bell_P;
		 		                              if(++BuDelay_Time>=Para_all_True.BuFang_Delay_Time)  {
		                                                         Close_Bell_P;
										 Para_all_True.Work_Mode=1;

										 //得到权限
										 while(KEY_TX_Right_B==0 )     os_wait2(K_TMO,2);
										 KEY_TX_Right_B=0;
									//	  os_wait2(K_TMO,100);
										 DaBao_JTX_0x24_And_Send(50, &i, 0); //50	 发生布防
										 os_wait2(K_TMO,200);
										 KEY_TX_Right_B=1;										 
										 //放弃到权限
								  }
		                             }
						//==============================
						// Spk_cnt;  //报警时警号鸣响计时用
                                          if(Spk_cnt!=0)  {
								    Open_Spkk_P;
									
                                                            Spk_cnt--;
								    if(Spk_cnt==0) {
								   	      Close_Spkk_P;
								    }
						}
										  	

						
                           }

        	}
}


//响1声音
void   Sound_Di()  {
	 	 
         Close_Bell_P;
	  os_wait2(K_TMO, 100);  
         Open_Bell_P;
	  os_wait2(K_TMO, 100);  	   os_wait2(K_TMO, 100);  	  os_wait2(K_TMO, 100);  	
         Close_Bell_P;

}


//响2声音
void   Sound_DiDi()  {
	 	 
         Close_Bell_P;
	  os_wait2(K_TMO, 100);  
         Open_Bell_P;
	  os_wait2(K_TMO, 100);  	 
         Close_Bell_P;
		  os_wait2(K_TMO, 100); 
         Open_Bell_P;
	  os_wait2(K_TMO, 100);  	 
         Close_Bell_P;
}


//响3声音
void   Sound_DiDiDi()  {
	 	 
         Close_Bell_P;
	  os_wait2(K_TMO, 100);  
         Open_Bell_P;
	  os_wait2(K_TMO, 100);  	 
         Close_Bell_P;
		  os_wait2(K_TMO, 100); 
         Open_Bell_P;
	  os_wait2(K_TMO, 100);  	 
         Close_Bell_P;
		   os_wait2(K_TMO, 100); 
         Open_Bell_P;
	  os_wait2(K_TMO, 100);  	 
         Close_Bell_P;
}


⌨️ 快捷键说明

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