📄 lzk.lst
字号:
C51 COMPILER V7.20 LZK 01/31/2007 10:20:42 PAGE 1
C51 COMPILER V7.20, COMPILATION OF MODULE LZK
OBJECT MODULE PLACED IN LZK.OBJ
COMPILER INVOKED BY: D:\Program Files\Keil\C51\BIN\c51.exe LZK.c DB OE
line level source
1 #include "LZK.H"
2
3
4 /***********************************************************************
5 *** 系统全局常量、变量、和位定义 .
6 ***********************************************************************/
7 uint8 data ucP5DATA = 0x7f; // Panel Latch Buffer.
8 uint8 data ucP4DATA = 0xC0; // P4 Latch Buffer.
9 /**************************************************************************/
10
11 uint8 xdata DmsCNT = 0;
12
13 uint8 xdata DmsFlag = 0;
14 uint16 xdata DmsNum = 0;
15
16 uint8 xdata Dms2Flag = 0;
17 uint16 xdata Dms2_1Num = 0;
18 uint16 xdata Dms2_2Num = 0;
19 uint16 xdata Dms2_3Num = 0;
20 /**************************************************************************/
21 bit MenuKeyEvt = 0;
22 bit EnterKeyEvt = 0;
23 bit CancelKeyEvt = 0;
24 bit UpKeyEvt = 0;
25 bit DownKeyEvt = 0;
26 bit LeftKeyEvt = 0;
27 bit RightKeyEvt = 0;
28 bit PressKeyEvt = 0;
29
30 uint16 xdata MenuKeyCNT = 0;
31 uint16 xdata EnterKeyCNT = 0;
32 uint16 xdata CancelKeyCNT = 0;
33 uint16 xdata UpKeyCNT = 0;
34 uint16 xdata DownKeyCNT = 0;
35 uint16 xdata LeftKeyCNT = 0;
36 uint16 xdata RightKeyCNT = 0;
37
38 uint16 xdata temp = 0;
39 uint8 xdata Flash[128];
40 uint8 xdata CFlash[100];
41
42 uint8 xdata seek = 0; //一级菜单页(主菜单选项)
43 uint8 xdata hunt = 0; //二级菜单页(一级菜单子菜单页及其选项)
44 uint8 xdata page = 0; //三级菜单页(二级菜单子菜单页 如:故障页,静态参数页)
45 uint8 xdata Data_Num = 0;//运行页六项滚动显示
46
47 uint8 xdata Mov1Up = 0; //动画运动量1
48 uint8 xdata Mov2Up = 0; //动画运动量2
49 uint8 xdata head = 0; //动画运动方向
50 uint8 xdata Shf1UP = 0; //上位机动画及热备图标
51 uint8 xdata Shf2UP = 0; //上位机动画及热备图标
52 /***********************************************************************
53 *** DI、DO开关量定义
54 **********************************************************************/
55
C51 COMPILER V7.20 LZK 01/31/2007 10:20:42 PAGE 2
56 /***********************************************************************
57 *** DO开关量(控制输出继电器)功能说明:
58 (1)KQJ:KQ可控硅开通控制继电器(常闭).
59 (2)LZJ:励磁状态继电器(常开),LZJ决定是否进行RF检测.
60 (3)LCJ:失步保护继电器(常开),控制主电源开关或输出给PLC.
61 (4)SZJ:跳闸停机继电器(常开),后备保护用,输出给PLC.
62 (5)BXJ:报警输出继电器(常开),用于接通声光报警或输出至PLC.
63 (6)TYJ:降压起动继电器(常开),控制输出.
64 (7)YKJ:遥控继电器(常开)
65 (8)N/A:
66 ***********************************************************************/
67 uint8 bdata RelayOUT = 0xff; // Output Relay STATUS.
68 sbit ZJJ_OUT = RelayOUT^7; // N/A.
69 sbit YKJ_OUT = RelayOUT^6; // YKJ Output Relay No.6.遥控状态输出
70 sbit TYJ_OUT = RelayOUT^5; // TYJ Output Relay No.5.降压启动控制输出
71 sbit BXJ_OUT = RelayOUT^4; // BXJ Output Relay No.4.报警输出
72 sbit SZJ_OUT = RelayOUT^3; // SZJ Output Relay No.3.失步再整步失败状态输出
73 sbit LCJ_OUT = RelayOUT^2; // LCJ Output Relay No.2.失步状态输出
74 sbit LZJ_OUT = RelayOUT^1; // LZJ Output Relay No.1.KQ误导通检测使能控制
75 sbit KQJ_OUT = RelayOUT^0; // KQJ Output Relay No.0.KQ控制继电器
76
77
78 /***********************************************************************
79 *** DI开关量(状态输入继电器)功能说明:
80 (1)DLJ:电机加电状态输入(常开),由PLC输入.
81 (2)RFJ:KQ导通检测(常开),RFJ闭合表示KQ导通.
82 (3)FCJ:断电保护输入(常开),由PLC输入,防止对电机的冲击.
83 (4)JYJ:降压起动输入(常开),由PLC输入.
84 (5)ZCJ:增值(常开),遥控增值.
85 (6)JCJ:减值(常开),遥控减值.
86 (7)YCJ:遥控状态继电器,由PLC输入.
87 (8)DYJ:低压状态输入.
88 ***********************************************************************/
89 uint8 bdata RelayIN = 0xff; // Digital Input STATUS.
90 sbit DYJ_IN = RelayIN^7; // DYJ Input Relay No.7.低电压强励控制输入
91 sbit YCJ_IN = RelayIN^6; // YCJ Input Relay No.6.遥控状态控制输入
92 sbit JCJ_IN = RelayIN^5; // JCJ Input Relay No.5.减值
93 sbit ZCJ_IN = RelayIN^4; // ZCJ Input Relay No.4.增值
94 sbit JYJ_IN = RelayIN^3; // JYJ Input Relay No.3.降压启动控制输入
95 sbit FCJ_IN = RelayIN^2; // FCJ Input Relay No.2.防冲击输入<DSJ断电失步保护继电器>
96 sbit RFJ_IN = RelayIN^1; // RFJ Input Relay No.1.RF误导通信号输入
97 sbit DLJ_IN = RelayIN^0; // DLJ Input Relay No.0.电机启动控制信号输入
98
99
100
101
102
103 /************************温度************************/
104 uint8 xdata Temper_EN = 0;
105 uint16 xdata KTemper = 0;
106 float xdata CTemper = 0;
107 uint8 xdata OutTemper = 0;
108 /***********************录波与显波*******************/
109 float xdata EM_k1 = 0;
110 float xdata EM_k2 = 0;
111 uint8 xdata EM_b1 = 0;
112 uint8 xdata EM_b2 = 0;
113 uint8 xdata EM_speed = 0;
114
115
116 uint8 idata AD_Switch = 0;
117 uint8 idata AD_DataBuff[4];
C51 COMPILER V7.20 LZK 01/31/2007 10:20:42 PAGE 3
118
119 char idata ExSramWrRdPag = 0;
120 char xdata ExSramStarPag = 0;
121 char xdata ExSramEndPag = 0;
122
123 uint16 idata ExSramWrRdAdr = 0x0000;
124 uint16 xdata ExSramTempAdr = 0x0000;
125 uint8 xdata *ExSramWrRdAdrPt;
126
127 uint8 xdata CH1[200];
128 uint8 xdata CH2[200];
129 uint8 xdata Em_PtData = 0;
130
131 uint8 xdata Em_Pace = 0;
132 uint8 xdata Em_Slot = 0;
133 /*****************************************************************/
134 uint8 xdata Star_EN = 0; //与DLJ对应锁存
135 uint8 xdata Wave_EN = 0; //与WaveEn对应锁
136 uint8 xdata DisWave_EN = 0; //显波使能
137 uint8 xdata Com_EN = 1; //上位机通信使能
138
139 uint16 xdata ErrorRege = 0; //故障类型
140 uint16 xdata ErrorTemp = 0; //故障锁存
141
142 uint8 xdata PictrRege = 0; //图片状态
143 uint8 xdata PictrTemp = 0; //图片锁存
144
145 uint8 xdata RecType = 0; //录波类型
146 uint8 xdata RecTemp = 0; //录波锁存
147
148 uint8 xdata AcctimeTemp = 0; //累计运行时间锁存
149 /*******************************************************************
150 0x00 不录波
151 0x01 手动录波
152 0x02 启动录波
153 0x03 缺相
154 0x04 投励失败
155 0x05 失控
156 0x06 失步
157 0x07 PT断线
158 ***************************/
159
160
161
162
163 /****************************************************************************
164 ** 函数名称: T2_ISR()
165 ** 功能描述: T2定时器中断处理,中断间隔125uS
166 (1)125uS时间基准:分为5个相位;
167 (2)WDT清除;
168 (3)A/D采样:UF,IF,DU,DI,CurrRingEY,CurrRingEI;
169 (4)DI读入: UFCO,IFCO,SYNCx,RelayIN;
170 (5)DO输出: RelayOUT,PulseOUT;
171 (6)功率因数相差法TIMER1测量结果读入;
172 ** 入口参数: 无
173 ** 出口参数: 无
174 ** 全局变量: 无
175 ** 调用模块: 无
176 ** 说明:
177 ****************************************************************************/
178 void T2_ISR(void) interrupt 5
179 {
C51 COMPILER V7.20 LZK 01/31/2007 10:20:42 PAGE 4
180 1
181 1
182 1 SFRPAGE = TMR2_PAGE ; // Change to TIMER2 PAGE.
183 1 TF2 = 0;
184 1 WDTCN = 0xA5; // Enable WDT or Reload the WDT.
185 1
186 1
187 1 /************************************
188 1 ***外部DI读入
189 1 ************************************/
190 1 RelayIN = RelayInPut();
191 1
192 1 /************************************
193 1 ***继电器输出
194 1 ************************************/
195 1 RelayOutPut(RelayOUT);
196 1
197 1 /****************************************************************/
198 1 if(Temper_EN==0)
199 1 {
200 2 ADC0_CH_Setting(0x08);
201 2 AD0INT = 0;
202 2 AD0BUSY = 1;
203 2 while( AD0INT == 0 );
204 2 KTemper=ADC0H;
205 2 KTemper=KTemper<<8;
206 2 KTemper=KTemper+ADC0L;
207 2 Temper_EN=1;
208 2 }
209 1
210 1 /****************************************************************/
211 1 Em_Slot++;
212 1
213 1 if(Wave_EN && Em_Slot >= EN_RecMode)
214 1 {
215 2 Em_Slot = 0;
216 2
217 2 for(AD_Switch=0;AD_Switch<4;AD_Switch++)
218 2 {
219 3 ADC0_CH_Setting(AD_Switch);
220 3 AD0INT = 0;
221 3 AD0BUSY = 1;
222 3 while( AD0INT == 0 );
223 3 AD_DataBuff[AD_Switch] = (ADC0H<<3)+(ADC0L>>5);
224 3 }
225 2
226 2 ExSRAM_PageSetting(ExSramWrRdPag);
227 2 for(AD_Switch=0;AD_Switch<4;AD_Switch++)
228 2 {
229 3 ExSramWrRdAdrPt = ExSramWrRdAdr;
230 3 *ExSramWrRdAdrPt = AD_DataBuff[AD_Switch];
231 3 ExSramWrRdAdr++;
232 3 }
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -