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

📄 dvs-v1.0.h

📁 电话报警主机AT89S52单片机并带有网络模块通信协议
💻 H
字号:
//dvs-v1.0.h
#include <AT89X55.H>
//====================================== 看门狗定义 =========================================
//#define //ClearWatchDog() {WDT=0x1e;WDT=0xe1;}							
//sfr WDT = 0xa6;
//===========================================================================================


//======================================= 重新定义IO口 ======================================
//P0
sbit P1_1 = P1^1;
sbit P1_0 = P1^0;
//P3
sbit P3_7  = P3^7;
sbit P3_6  = P3^6;
sbit P3_5  = P3^5;
sbit P3_4  = P3^4;
sbit P3_3  = P3^3;
sbit P3_2  = P3^2;
sbit P3_1  = P3^1;
sbit P3_0  = P3^0;
//==========================================================================================


//======================================== IO口定义 ========================================
#define			Play_Snd				P0_4								//放音指示
#define			Listen_CTRL				P0_5								//现场监听
#define			REC_Enabled				P0_6								//录音
#define			SUN_LED					P0_7								//电话指示灯
#define			EEROM_SCL				P1_0								//EEROM时钟
#define  		EEROM_SDA				P1_1								//EEROM数据
#define			HANDUP					P1_3								//摘机
#define			BHVoice					P1_4								//远程控制时单片机发出的嘟声
#define			COOD					P1_5								//对码
#define			RINGING					P1_6								//电话铃声
#define			SET						P1_7								//继电器控制
#define   		ALARM_LED            	P2_0								//报警指示灯
#define			LED_DATA				P2_1								//74HC164数据
#define			LED_CLK					P2_2								//74hc164时钟
#define			BZZER					P2_3								//蜂号
#define			DTMF_Valid				P2_4								//DTMF解码标志
#define			HT9200_DATA				P2_5								//HT9200A数据
#define 		HT9200_CLK				P2_6								//HT9200时钟
#define			HT9200_CE1				P2_7								//HT9200选择
#define			REM_DATA				P3_2								//遥控接收
#define			ONLINE					P3_3								//断线输入
#define			KALARM					P3_5								//外部警号
//=========================================================================================



//========================================= 按键定义 ======================================
#define			PHONE_CODE				0x01								//电话号码设置
#define			SET_PASS				0x02								//设置密码
#define			SET_RING_CNT			0x03								//设置振铃次数
#define			SET_DIAL_OF				0x04								//设置拔号开关
#define			SET_ALAR_TI				0x05								//设置警笛声时间
#define			SET_ONLINE_ALAR			0x06								//设置断线报警
#define			SET_BUCHE				0x07								//布/撤防
#define			DE_LISTEN				0x08								//现场监听
#define			USER_REC_ENAD			0x09								//用户录音
//==========================================================================================



//======================================== 遥控按键定义 =====================================
#define			SET_REM_SETP			0x0c								//遥控设置
#define			SET_REM_ARM				0x0b								//遥控布防
#define			SET_REM_DISARM			0x0a								//遥控撤防
#define			SET_REM_ALARM			0x09								//遥控紧急报警
//===========================================================================================



//========================================== 常量定义 ========================================
#define			PH_CODE_LEN				20									//每组电话号码长度
#define			ALARTIME				32*60								//第次拔号报警的时间为60秒
#define			RING_TACTI_CNT			3									//振铃次数默认为3次
#define			SET_REM_TIM				200									//设置遥控时定时
#define			SUN_LED_OFF				1									//电话指示灯关闭
#define			SUN_LED_ON				0									//电话指示灯打开
#define			REC_PLAY_TIME			32*10								//放音的时间10秒
#define			KEY_TIME				50									//长时间按对码键定时
#define			KALAROFF				0									//关闭警号声
#define			KALARON					1									//打开警号声
#define			ALARSOUREARTIME			32									//警笛时间初值(1秒)
#define			ALARSOURTIME			30									//默认警笛时间为15秒钟
#define			TWINLEDTIME				20									//闪烁的时间大约20*35MS
//============================================================================================



//====================================== EEPROM地址定义 ======================================
#define			STER_ADDR				55									//EEPROM首地址从20开始
#define			Pass_Pub_Addr			6									//密码的设置标致的地址
#define			Ring_Cnt_Addr			7									//振铃次数的设置标致的地址
#define			Alar_TI_Addr			8									//警笛声地址
#define			R315_STAR_ADDR			9				//(0-7)*3			//315解码后的首地址
#define			REM_STAR_ADDR			(R315_STAR_ADDR+3*8)				//遥控首地址						
#define			Alar_Star_Addr			46									//防区标志首地址
//=============================================================================================



//======================================= 设置波特率 ===========================================
#define    BANDRATE			0xFA									// 定时器初值,22.1184Mhz,波特率9600								
//#define    BANDRATE			0xF4									// 定时器初值,22.1184Mhz,波特率4800
//#define    BANDRATE			0xE8									// 定时器初值,22.1184Mhz,波特率2400	
//#define    BANDRATE			0xFF									// 定时器初值,22.1184Mhz,波特率57600	
//==============================================================================================



//======================================== 2272解码选择 =========================================
//2262取1.5M时
#define		SynchHard		luc_temp > 13530||luc_temp < 6000		// 判断同步码的宽度,同步码5ms--6ms
#define 	WideSing		luc_temp > 700 && luc_temp < 1000		// 宽取0.4ms--0.5ms
#define		NarrowSing		luc_temp > 80 && luc_temp < 333			// 窄取0.1ms--0.2ms
//2262取4.7M时
//#define		SynchHard		luc_temp> 36000||luc_temp<20000			//判断同步码的宽度,同步码13ms--19ms
//#define 	WideSing		luc_temp>1800 && luc_temp<3500			//宽取1.1ms--1.9ms
//#define		NarrowSing		luc_temp>450 && luc_temp<1400			//窄取0.3ms--0.7ms
//===============================================================================================



//================================= 开机默认密码保有护 ==========================================
#define		PassSafeDefau		WrEEPROM(Pass_Pub_Addr,'D')				//删除密码保护
//#define		PassSafeDefau		WrEEPROM(Pass_Pub_Addr,'O')				//设置密码保护
//===============================================================================================


//=================================== 串口通信协议功能 ==========================================
#define		SET_COM_PHONE			0x81									// 设置串口电话号码
#define		QUERIES_COM_PHONE		0x01									// 查询串口电话号码
//#define		DEL_COM_PHONE			0x84									//删除串口电话号码
#define		SET_COM_ARMED			0x82									// 设置串口布/撤防
#define		QUERIES_COM_ARMED		0x02									// 查询串口布/撤防
#define		SET_COM_WAR_TIME		0x83									// 设置串口警号声时间
#define		QUERIES_COM_WAR_TIME	0x03									// 查询串口警号声时间
#define		TEL_ALARM_KEEP_ALIVE	0x86									// 心跳
#define		ARMED					0xf1									// 串口布防
#define		DISARMED				0xf0									// 串口撤防
#define		ALARCPP					0x05									// 报警时主机向模块命令

#define		MPROBE_ALAR				0x06									// 网络探头报警,又名有线报警
	
//===============================================================================================

⌨️ 快捷键说明

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