亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? dvs-v1.0.c

?? 電話報警主機AT89S52單片機并帶有網絡模塊通信協議
?? C
?? 第 1 頁 / 共 3 頁
字號:
//DVS-V1.0.C
//=============================================================================================
// 模塊名稱:視頻服務器DVS-V1.0
// 芯片型號:
// 晶振頻率:22.1184MHz
// CPU型號: AT89S52
//
// 版權所有:深圳市至安科技開發有限公司
//
// 創建日期/時間:2008-11-20     修改日期/時間:
// 創建人員:                    修改人員:
//==============================================================================================
#include "DVS-V1.0.H"
#include "remctrl.H"
//======================================== 全局變量 ============================================
//位
bit guc_Bit_BuChe;													//布撤防:1為布,0為撤
bit guc_bitbhOF;													//拔號開關
//指示燈
bit	guc_bit_AlLedOF;												//報警指示燈閃爍開關
bit	POW_GlimmLEDOF;													//電源指示燈閃爍開關
bit guc_bit_Alar_led;												//防區指示燈閃爍開關
//
bit guc_bitLedDispPul;												//設置時各指示燈只點亮一次標致
//bit guc_bitAlarPul2;												//報警標致,1為已經報警
bit guc_bit_ERC = 0 ;												//放音開關
bit guc_bit_RemCom;													//有解碼信號
bit guc_bit_SenAlar = 0;											//傳感器報警
//bit	guc_bit_AlarPul;												//拔號報警標致
bit	guc_bitAlaSounPul;												//斷線報警只報一次標致
bit guc_bitLineOFAlar;												//斷線報警開關
bit guc_bitARPul ;													//只判斷一次
bit guc_bitPhSet;													//遠程設置標致
bit guc_bitRsCom;													//中斷接收完畢
bit guc_bitENCD;													//現場聽
//變量
unsigned int  data 	guc_Timer0;										//拔號按鍵定時計數器
unsigned int  data  guc_KATime;										//警響聲定時計數器
unsigned int  data  guc_AlarTi;										//報警時間計數器
unsigned char data  guc_Timer2;										//中斷接收結束等待清0定時
unsigned int  data  guc_SetAddrTi;									//長時間按對碼鍵,則刪除對碼
unsigned int  data  guc_ERCTI;										//放音觸出定時
unsigned char data  guc_AlarCnt;									//拔號時計算器
unsigned char data  guc_TI;											//防區燈閃爍定時計數器
unsigned char idata guc_REM_TI;										//315解碼時間計數器
unsigned char idata guc_REM_Temp;									//解碼接收臨時變量
unsigned int idata 	guc_ENCD_TI;									//報警后開始放音,放到一定時間后開始打開現場聽
unsigned char data  guc_RsPoint;									//接收長度
//位定義
unsigned char bdata	guc_LED;	
sbit	guc_bit_led1 = guc_LED^0 ;									//第1路防區指示燈點亮
sbit	guc_bit_led2 = guc_LED^1;									//第2路防區指示燈點亮
sbit	guc_bit_led3 = guc_LED^2;									//第3路防區指示燈點亮
sbit	guc_bit_led4 = guc_LED^3;									//第4路防區指示燈點亮
sbit	guc_bit_led5 = guc_LED^4;									//第5路防區指示燈點亮
sbit	guc_bit_led6 = guc_LED^5;									//第6路防區指示燈點亮
sbit	guc_bit_led7 = guc_LED^6;									//第7路防區指示燈點亮
sbit	guc_bit_led8 = guc_LED^7;									//第8路防區指示燈點亮
unsigned char bdata	guc_74HC164LED;									//指示燈
sbit led1 = guc_74HC164LED^0;										//第1防區指示燈
sbit led2 = guc_74HC164LED^1;										//第2防區指示燈
sbit led3 = guc_74HC164LED^2;										//第3防區指示燈
sbit led4 = guc_74HC164LED^3;										//第4防區指示燈
sbit led5 = guc_74HC164LED^4;										//第5防區指示燈
sbit led6 = guc_74HC164LED^5;										//第6防區指示燈
sbit led7 = guc_74HC164LED^6;										//第7防區指示燈
sbit led8 = guc_74HC164LED^7;										//第8防區指示燈
//數組
unsigned char data guc_PassBuf[4];									//本機密碼
unsigned char data guc_R315Buf[3];									//315解碼后的數據
unsigned char idata RsBuf[32];										//接收緩沖區
//============================================================================================

//============================================================================================
unsigned char JudgeDupAddr(unsigned char *p_PDst);					//判斷是否有重復的地址
void SendToData(unsigned char *p,unsigned char Long);				//發送命令
void SendDTMEDat(unsigned char auc_data);							//DTMF拔號
void FlickerOut(unsigned char auc_data);							//防區指示燈
void SendASC(unsigned char ASC)	;									//發送-個ASCII
void SuccBuzzer();													//設置成功時發出的聲音
void FailBuzzer();													//設置失敗時發出的聲音
void DispAlarLED();													//防區指示燈
void SaveInit();													//保存初始化的值
void ClearRem();													//清除2272解碼后的數據 
void HC164Shif();													//74hc164輸出
void ScanRemDis();													//掃描遙控并處理	
void RemIn();														//315解碼
void StarSetFun();													//開始設置各種功能
void OverSetFun();													//結束設置各種功能
void ONAlarSoun();													//打開警號聲
void OFFAlarSoun();													//關閉警號聲
void SetWordDisp();													//焊髦稚柚檬備鱈ED指示
//============================================================================================



//=========================================== 外部定義 ======================================
extern void Delay1Ms(unsigned int auc_time);						//延時1MS
extern void WrEEPROM(unsigned char address,unsigned char indata);	//寫EEPROM
extern unsigned char RdEEPROM(unsigned char address);				//讀EEPROM
extern unsigned char DTMF();										//DTMF解碼 
extern void AlarOut();												//傳感器報警輸出
extern void ScanRing();												//掃描振鈴	
extern void BHStopAlar();											//在拔號時用戶想停止報警
extern void ScanComProtoc();										//掃描串口協議
extern void GreekVoice();											//遠程控制時成功提示音
extern void UntoDisLister() ;										//現場監聽時間到達
//============================================================================================



//============================================================================================
//語法格式:		void SendASC(unsigned char ASC)
//實現功能:		單獨發送一個數據
//參數:			需要發送的數據
//返回:			無
//創建時間:2008-11-30          修改時間:
//創建人員:                    修改人員:
//============================================================================================
void SendASC(unsigned char ASC)							//發送-個ASCII
{
	bit bit_es;
	bit_es = ES;
	ET2=0; 
	ES=0;          										//關閉中斷
	TI=0;
	SBUF=ASC;
	while(!TI);
	TI=0;
	ES = bit_es;
	ET2=1; 							
}
//===============================================================================================
//語法格式:		void SendToData(unsigned char *p,unsigned char Long)
//實現功能:		把數組發送出去
//參數:			數組與數組的長度
//返回:			無
//創建時間:2008-11-30          修改時間:
//創建人員:                    修改人員:
//===============================================================================================
void SendToData(unsigned char *p,unsigned char Long)	//發送命令
{
	while(Long--)
	{
    	SendASC(*p++);
  	}		
}


//===============================================================================================
//語法格式:		SendDTMFByte
//實現功能:		拔打電話
//參數:			需要拔出去的號碼
//返回:			無
//創建時間:2008-11-30          修改時間:
//創建人員:                    修改人員:
//===============================================================================================
void SendDTMFByte(unsigned char auc_data)
{
	unsigned char data luc_i;
	for(luc_i = 0 ;luc_i < 5 ; luc_i ++)
	{
		HT9200_DATA = auc_data&0x01 ;
		HT9200_CLK = 0 ;
		auc_data=auc_data>>1;
		HT9200_CLK = 1 ;
	}	
}
//===============================================================================================
//語法格式:		SendDTMEDat(unsigned char auc_data)
//實現功能:		拔打電話
//參數:			需要拔出去的號碼
//返回:			無
//創建時間:2008-11-30          修改時間:
//創建人員:                    修改人員:
//===============================================================================================
void SendDTMEDat(unsigned char auc_data)
{
	unsigned char data luc_temp;
	Delay1Ms(100);							//延時 100 ms
	SUN_LED = SUN_LED_ON;
	if(auc_data == 0)	luc_temp = 10;		//DTMF編碼中的'0'是'10'
	else	luc_temp = auc_data;
	HT9200_CE1 = 0 ;
	HT9200_CLK = 1 ;
	Delay1Ms(10);	 						//延時 10 ms
	EA = 0 ;
	SendDTMFByte(luc_temp) ;
	EA = 1 ;
	Delay1Ms(100); 							//延時 100 ms
	HT9200_CE1 = 1;
	SUN_LED = SUN_LED_OFF;
}


//===============================================================================================
//語法格式:SaveInit()
//實現功能:保存初始化的數據
//參數:	無
//返回值:	無
//創建時間:2008-11-30          修改時間:
//創建人員:                    修改人員:
//===============================================================================================
unsigned char code Init_Tab[6]={0x31,0x32,0x01,0x02,0x03,0x04};
void SaveInit()
{
	unsigned char data luc_i;
	for(luc_i = 0 ; luc_i < 6 ; luc_i++)
	{
		WrEEPROM(luc_i,Init_Tab[luc_i]);								//保存初始化的值
	}
	PassSafeDefau;														//默認密碼保護
	WrEEPROM(Alar_TI_Addr,ALARSOURTIME);								//默認警笛時間為15秒鐘
	WrEEPROM(Ring_Cnt_Addr,RING_TACTI_CNT);								//振鈴次數
}




//===============================================================================================
//語法格式:Init()
//實現功能:開機初始化
//參數:	無
//返回值:	無
//創建時間:2008-11-30          修改時間:
//創建人員:                    修改人員:
//===============================================================================================
void Init()
{
	unsigned char data luc_i,luc_j;
	bit bit_ok;
	guc_bitbhOF = 1;										//打開拔號開關					
	POW_GlimmLEDOF = 1;										//電源指示燈閃爍打開
//	guc_bit_AlarPul = 1;									//拔號報警標致
	guc_bitAlaSounPul = 0;									//斷線報警只報一次標致
	guc_bit_AlLedOF = 0;									//報警指示燈關閉閃爍
	guc_bit_Alar_led = 1;									//防區指示燈閃爍開關
	guc_bitARPul = 1;										//斷線報警只判斷一次
	guc_Bit_BuChe = 1;										//默認為布防
	guc_bit_RemCom = 0;										//2272解碼清0
//	guc_bit_SenAlar = 0;									//傳感器報警
	guc_bitLineOFAlar = 1;									//斷線報警開關
	BZZER = 0;												//蜂響聲
	Listen_CTRL = 0;										//關閉現場監聽
	SET = 0;												//繼電器
	HANDUP = 0;												//摘機
	guc_REM_TI = 0;											//315解碼定時器
	guc_AlarCnt = 0;										//拔號計算器清0
	guc_KATime = 0;											//警響聲計數器清0
//	guc_bit_ERC = 0;										//放音開閉
	guc_TI = TWINLEDTIME;									//防區燈閃爍定時計數器
	guc_bitPhSet = 0;										//電話設置蜂鳴聲開關
	guc_bitENCD =  0;										//現場聽標致
	guc_74HC164LED = 0;
	DispAlarLED();
	for(luc_j = 0 ; luc_j < 3 ; luc_j ++)					//讀3次開機標致位,只要有一次成功退出
	{
		for(luc_i = 0 ; luc_i < 2 ; luc_i++)				//讀取開機標致
		{
			if(RdEEPROM(luc_i) == Init_Tab[luc_i]) bit_ok = 1;
			else
	 		{
				bit_ok = 0;
				break;
			}
		}
		if(bit_ok == 1) break;
	}
	if(bit_ok == 0)	SaveInit();								//沒有開機初始化,則初始化													
	for(luc_i = 0 ; luc_i < 4 ; luc_i++)
	{
		guc_PassBuf[luc_i] = RdEEPROM(2+luc_i);				//讀取密碼
	}
}




//===============================================================================================
//語法格式:SetBuChe()
//實現功能:設置布撤防
//參數:	無
//返回值:	無
//創建時間:2008-11-30          修改時間:
//創建人員:                    修改人員:
//===============================================================================================	
void RemIn()
{  

	unsigned char data A[3];                     			//存放解碼的數據
	unsigned char data luc_i,luc_j;
	unsigned int data  luc_temp; 
	unsigned char data luc_Cnt;
	if(!REM_DATA)
	{ 
		//ClearWatchDog();
		for(luc_Cnt = 0; luc_Cnt < 2 ; luc_Cnt++)			//連續解碼兩次,防止誤碼解碼
		{
			TH0=0; TL0=0;		 							//清定時器的計數器	
			while (!REM_DATA);                            	//等待高電平 
			TR0=1;                                    	 	//啟動定時器0
			while(REM_DATA);                            	//等待低電平    
			if (TF0==1)  goto RemExit;                		//超時就退出
			TR0 = 0;  
			luc_temp=TH0;    
			luc_temp=(luc_temp<<8)+TL0;  
			if (SynchHard)									//判斷同步碼的寬度,同步碼5ms--6ms
			{       
				luc_temp=0; 
				goto RemExit;  
			}												//同步碼第一次檢測成功 
			for (luc_i=0; luc_i<3; luc_i++)					//解 3*8=24 位碼  
			{  
				for (luc_j=0; luc_j<8; luc_j++)    
				{       
					while (!REM_DATA);						//等待高電平  
					TH0=0;  TL0=0;							//清定時器的計數器		 
					TR0=1;
					while (REM_DATA);						//等待低電平        
					if (TF0==1) goto RemExit;				//超時就退出 
					TR0=0;     
					luc_temp=TH0;    
					luc_temp=(luc_temp<<8)+TL0;   
					if (WideSing)							//寬取0.4ms--0.5ms
					{   
						A[luc_i]=A[luc_i]<<1;				//保存0  
					}        
					else if (NarrowSing)					//窄取0.1ms--0.2ms
					{  
			 			A[luc_i]=A[luc_i]<<1; 
						A[luc_i]=A[luc_i]+1;				//保存 1 
					}          
					else goto RemExit;  
				}   
				luc_temp=0;
			} 
		}
		for (luc_i=0; luc_i<3; luc_i++)						//接收的數據放在guc_R315Buf里
        {
			guc_R315Buf[luc_i] = A[luc_i];
		}
		guc_bit_RemCom = 1;  								//表示已經正確解碼到數據
		RemExit:											//退出
		{  
			TR0=0;  
			REM_DATA = 1;   
			TF0=0; 
			return;    
		}
	}
} 




//===============================================================================================
//語法格式:	ClearRem()	
//實現功能:	處理清除2272解碼后的數據 
//參數:		無

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
无码av免费一区二区三区试看 | 99国产欧美另类久久久精品 | 欧美裸体一区二区三区| 99视频在线精品| 欧美日韩另类国产亚洲欧美一级| 欧美剧在线免费观看网站| 日韩免费视频一区| 久久久久88色偷偷免费| 亚洲男女一区二区三区| 日韩av在线播放中文字幕| 日韩av午夜在线观看| 国产又黄又大久久| 色哟哟亚洲精品| 久久蜜臀中文字幕| 午夜久久久影院| 成人美女在线视频| 欧美福利视频导航| 国产精品天天看| 美女一区二区久久| 色成人在线视频| 久久亚洲欧美国产精品乐播| 亚洲精品乱码久久久久久日本蜜臀| 免费日本视频一区| 色就色 综合激情| 精品精品国产高清一毛片一天堂| 亚洲欧美偷拍三级| 美女一区二区三区| 欧美少妇xxx| 亚洲欧美日韩国产中文在线| 国模大尺度一区二区三区| 欧美三级视频在线| 中文字幕亚洲视频| 国产一区视频网站| 欧美一三区三区四区免费在线看 | 美女免费视频一区二区| 欧美一区二区三区成人| 日韩成人一区二区三区在线观看| 91久久精品日日躁夜夜躁欧美| 日韩一区在线看| av电影天堂一区二区在线| 国产精品热久久久久夜色精品三区| 九九精品一区二区| 久久人人97超碰com| 成人网在线免费视频| 国产精品高潮久久久久无| zzijzzij亚洲日本少妇熟睡| 亚洲欧洲在线观看av| 91丨九色丨国产丨porny| 一区二区三区四区在线| 在线免费观看不卡av| 亚洲福利一区二区三区| 91精品国产手机| 久久成人免费网| 国产性色一区二区| 97se狠狠狠综合亚洲狠狠| 一区二区视频在线| 欧美日韩精品免费| 久久av老司机精品网站导航| 欧美韩国日本不卡| 日本高清不卡在线观看| 亚洲成人午夜电影| 久久精品人人做人人爽人人| 99国产精品久久久久久久久久| 亚洲一区二区三区自拍| 日韩免费视频一区| eeuss鲁片一区二区三区在线观看 eeuss鲁片一区二区三区在线看 | 色哦色哦哦色天天综合| 日韩成人av影视| 亚洲国产精品二十页| 欧美久久一区二区| 国产成人一级电影| 亚洲二区在线观看| 国产亚洲一区二区在线观看| 欧美中文字幕一区二区三区亚洲| 六月丁香综合在线视频| 一区二区三区四区中文字幕| 精品福利av导航| 欧美视频一区二区在线观看| 久久99精品久久久久久| 亚洲欧美日韩久久精品| 欧美成人一区二区三区片免费| 不卡的av在线播放| 日本不卡视频在线| 亚洲欧美二区三区| 久久久亚洲午夜电影| 欧美片在线播放| 夫妻av一区二区| 免费成人av在线播放| 久久99久久99| 亚洲欧美福利一区二区| 久久理论电影网| 制服丝袜成人动漫| 91福利国产成人精品照片| 国产成人免费在线观看不卡| 午夜精品福利视频网站| 亚洲色图在线看| 久久影视一区二区| 欧美一二三四在线| 欧美自拍偷拍午夜视频| 91农村精品一区二区在线| 国产激情视频一区二区在线观看| 美女性感视频久久| 日韩1区2区3区| 亚洲福利视频一区二区| 亚洲精品国产精华液| 国产精品久久免费看| 日本一区二区三区在线观看| 久久久久久久久蜜桃| 精品国产成人系列| 日韩美女视频在线| 精品久久一区二区| xfplay精品久久| 日韩欧美黄色影院| 精品久久久久久无| 精品国产成人系列| 国产欧美日韩视频在线观看| 久久精品视频免费观看| 国产日产欧美一区| 国产精品视频线看| 亚洲欧美日韩在线不卡| 久久久久久久久久久久久久久99| 精品国产伦一区二区三区观看方式| 精品久久久久一区二区国产| 欧美v亚洲v综合ⅴ国产v| 91精品国产综合久久香蕉的特点 | 成人av在线观| 91在线播放网址| 日本高清无吗v一区| 欧美日韩精品欧美日韩精品 | 奇米综合一区二区三区精品视频| 日韩综合小视频| 久久 天天综合| 丁香激情综合国产| 91丨porny丨国产| 欧美精品一二三四| 久久五月婷婷丁香社区| 中文字幕日韩精品一区| 一区二区日韩av| 蜜桃视频一区二区三区| 成人综合在线网站| 色婷婷av一区二区三区软件| 欧美一级二级三级蜜桃| 国产日韩欧美综合在线| 国产精品一区二区在线播放| 成人99免费视频| 欧美日韩一区二区三区四区五区| 日韩免费观看2025年上映的电影| 国产欧美一区二区三区在线看蜜臀 | 91蜜桃免费观看视频| 在线电影国产精品| 久久精品一区二区三区不卡牛牛 | 国产午夜亚洲精品午夜鲁丝片| 中文字幕在线一区| 日本中文字幕一区二区视频| 国产成人亚洲综合色影视| 91成人看片片| 久久亚洲春色中文字幕久久久| 亚洲精品国产成人久久av盗摄 | 亚洲国产视频一区二区| 黄一区二区三区| 欧美性感一区二区三区| 日本一区二区视频在线观看| 天堂成人免费av电影一区| 成人免费视频网站在线观看| 欧美丰满美乳xxx高潮www| 国产精品乱码久久久久久| 日韩国产精品久久久| 99久久精品国产导航| 欧美mv日韩mv国产| 亚洲无人区一区| 欧美精品xxxxbbbb| 国产精品短视频| 韩国成人精品a∨在线观看| 欧美天堂一区二区三区| 国产日韩综合av| 久久激情综合网| 欧美午夜一区二区| 中文字幕一区二区三区四区| 另类小说一区二区三区| 欧美色综合天天久久综合精品| 日本一区二区三区在线不卡| 国内精品嫩模私拍在线| 91精品国产欧美一区二区成人| 一区二区三区在线视频观看58| 成人一区二区视频| 久久久久久亚洲综合| 青青青伊人色综合久久| 欧美日韩国产美女| 亚洲精品亚洲人成人网在线播放| 国产精品一区在线| 久久九九久精品国产免费直播| 久久超碰97中文字幕| 日韩欧美综合在线| 日产国产欧美视频一区精品| 精品视频一区三区九区| 亚洲一区二区三区在线| 在线免费观看日本一区| 一区二区三区在线视频观看58| 99久久er热在这里只有精品66| 国产精品久久午夜夜伦鲁鲁|