📄 dvs-v1.0.lst
字号:
C51 COMPILER V7.06 DVS_V1_0 03/10/2009 18:23:25 PAGE 1
C51 COMPILER V7.06, COMPILATION OF MODULE DVS_V1_0
OBJECT MODULE PLACED IN dvs-v1.0.OBJ
COMPILER INVOKED BY: D:\Program Files\keil2.0\C51\BIN\C51.EXE dvs-v1.0.C BROWSE DEBUG OBJECTEXTEND
stmt level source
1 //DVS-V1.0.C
2 //=============================================================================================
3 // 模块名称:视频服务器DVS-V1.0
4 // 芯片型号:
5 // 晶振频率:22.1184MHz
6 // CPU型号: AT89S52
7 //
8 // 版权所有:深圳市至安科技开发有限公司
9 //
10 // 创建日期/时间:2008-11-20 修改日期/时间:
11 // 创建人员: 修改人员:
12 //==============================================================================================
13 #include "DVS-V1.0.H"
14 #include "remctrl.H"
15 //======================================== 全局变量 ============================================
16 //位
17 bit guc_Bit_BuChe; //布撤防:1为布,0为撤
18 bit guc_bitbhOF; //拔号开关
19 //指示灯
20 bit guc_bit_AlLedOF; //报警指示灯闪烁开关
21 bit POW_GlimmLEDOF; //电源指示灯闪烁开关
22 bit guc_bit_Alar_led; //防区指示灯闪烁开关
23 //
24 bit guc_bitLedDispPul; //设置时各指示灯只点亮一次标致
25 //bit guc_bitAlarPul2; //报警标致,1为已经报警
26 bit guc_bit_ERC = 0 ; //放音开关
27 bit guc_bit_RemCom; //有解码信号
28 bit guc_bit_SenAlar = 0; //传感器报警
29 //bit guc_bit_AlarPul; //拔号报警标致
30 bit guc_bitAlaSounPul; //断线报警只报一次标致
31 bit guc_bitLineOFAlar; //断线报警开关
32 bit guc_bitARPul ; //只判断一次
33 bit guc_bitPhSet; //远程设置标致
34 bit guc_bitRsCom; //中断接收完毕
35 bit guc_bitENCD; //现场听
36 //变量
37 unsigned int data guc_Timer0; //拔号按键定时计数器
38 unsigned int data guc_KATime; //警响声定时计数器
39 unsigned int data guc_AlarTi; //报警时间计数器
40 unsigned char data guc_Timer2; //中断接收结束等待清0定时
41 unsigned int data guc_SetAddrTi; //长时间按对码键,则删除对码
42 unsigned int data guc_ERCTI; //放音触出定时
43 unsigned char data guc_AlarCnt; //拔号时计算器
44 unsigned char data guc_TI; //防区灯闪烁定时计数器
45 unsigned char idata guc_REM_TI; //315解码时间计数器
46 unsigned char idata guc_REM_Temp; //解码接收临时变量
47 unsigned int idata guc_ENCD_TI; //报警后开始放音,放到一定时间后开始打开现场听
48 unsigned char data guc_RsPoint; //接收长度
49 //位定义
50 unsigned char bdata guc_LED;
51 sbit guc_bit_led1 = guc_LED^0 ; //第1路防区指示灯点亮
52 sbit guc_bit_led2 = guc_LED^1; //第2路防区指示灯点亮
53 sbit guc_bit_led3 = guc_LED^2; //第3路防区指示灯点亮
54 sbit guc_bit_led4 = guc_LED^3; //第4路防区指示灯点亮
55 sbit guc_bit_led5 = guc_LED^4; //第5路防区指示灯点亮
C51 COMPILER V7.06 DVS_V1_0 03/10/2009 18:23:25 PAGE 2
56 sbit guc_bit_led6 = guc_LED^5; //第6路防区指示灯点亮
57 sbit guc_bit_led7 = guc_LED^6; //第7路防区指示灯点亮
58 sbit guc_bit_led8 = guc_LED^7; //第8路防区指示灯点亮
59 unsigned char bdata guc_74HC164LED; //指示灯
60 sbit led1 = guc_74HC164LED^0; //第1防区指示灯
61 sbit led2 = guc_74HC164LED^1; //第2防区指示灯
62 sbit led3 = guc_74HC164LED^2; //第3防区指示灯
63 sbit led4 = guc_74HC164LED^3; //第4防区指示灯
64 sbit led5 = guc_74HC164LED^4; //第5防区指示灯
65 sbit led6 = guc_74HC164LED^5; //第6防区指示灯
66 sbit led7 = guc_74HC164LED^6; //第7防区指示灯
67 sbit led8 = guc_74HC164LED^7; //第8防区指示灯
68 //数组
69 unsigned char data guc_PassBuf[4]; //本机密码
70 unsigned char data guc_R315Buf[3]; //315解码后的数据
71 unsigned char idata RsBuf[32]; //接收缓冲区
72 //============================================================================================
73
74 //============================================================================================
75 unsigned char JudgeDupAddr(unsigned char *p_PDst); //判断是否有重复的地址
76 void SendToData(unsigned char *p,unsigned char Long); //发送命令
77 void SendDTMEDat(unsigned char auc_data); //DTMF拔号
78 void FlickerOut(unsigned char auc_data); //防区指示灯
79 void SendASC(unsigned char ASC) ; //发送-个ASCII
80 void SuccBuzzer(); //设置成功时发出的声音
81 void FailBuzzer(); //设置失败时发出的声音
82 void DispAlarLED(); //防区指示灯
83 void SaveInit(); //保存初始化的值
84 void ClearRem(); //清除2272解码后的数据
85 void HC164Shif(); //74hc164输出
86 void ScanRemDis(); //扫描遥控并处理
87 void RemIn(); //315解码
88 void StarSetFun(); //开始设置各种功能
89 void OverSetFun(); //结束设置各种功能
90 void ONAlarSoun(); //打开警号声
91 void OFFAlarSoun(); //关闭警号声
92 void SetWordDisp(); //焊髦稚柚檬备鱈ED指示
93 //============================================================================================
94
95
96
97 //=========================================== 外部定义 ======================================
98 extern void Delay1Ms(unsigned int auc_time); //延时1MS
99 extern void WrEEPROM(unsigned char address,unsigned char indata); //写EEPROM
100 extern unsigned char RdEEPROM(unsigned char address); //读EEPROM
101 extern unsigned char DTMF(); //DTMF解码
102 extern void AlarOut(); //传感器报警输出
103 extern void ScanRing(); //扫描振铃
104 extern void BHStopAlar(); //在拔号时用户想停止报警
105 extern void ScanComProtoc(); //扫描串口协议
106 extern void GreekVoice(); //远程控制时成功提示音
107 extern void UntoDisLister() ; //现场监听时间到达
108 //============================================================================================
109
110
111
112 //============================================================================================
113 //语法格式: void SendASC(unsigned char ASC)
114 //实现功能: 单独发送一个数据
115 //参数: 需要发送的数据
116 //返回: 无
117 //创建时间:2008-11-30 修改时间:
C51 COMPILER V7.06 DVS_V1_0 03/10/2009 18:23:25 PAGE 3
118 //创建人员: 修改人员:
119 //============================================================================================
120 void SendASC(unsigned char ASC) //发送-个ASCII
121 {
122 1 bit bit_es;
123 1 bit_es = ES;
124 1 ET2=0;
125 1 ES=0; //关闭中断
126 1 TI=0;
127 1 SBUF=ASC;
128 1 while(!TI);
129 1 TI=0;
130 1 ES = bit_es;
131 1 ET2=1;
132 1 }
133 //===============================================================================================
134 //语法格式: void SendToData(unsigned char *p,unsigned char Long)
135 //实现功能: 把数组发送出去
136 //参数: 数组与数组的长度
137 //返回: 无
138 //创建时间:2008-11-30 修改时间:
139 //创建人员: 修改人员:
140 //===============================================================================================
141 void SendToData(unsigned char *p,unsigned char Long) //发送命令
142 {
143 1 while(Long--)
144 1 {
145 2 SendASC(*p++);
146 2 }
147 1 }
148
149
150 //===============================================================================================
151 //语法格式: SendDTMFByte
152 //实现功能: 拔打电话
153 //参数: 需要拔出去的号码
154 //返回: 无
155 //创建时间:2008-11-30 修改时间:
156 //创建人员: 修改人员:
157 //===============================================================================================
158 void SendDTMFByte(unsigned char auc_data)
159 {
160 1 unsigned char data luc_i;
161 1 for(luc_i = 0 ;luc_i < 5 ; luc_i ++)
162 1 {
163 2 HT9200_DATA = auc_data&0x01 ;
164 2 HT9200_CLK = 0 ;
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -