📄 set.lst
字号:
C51 COMPILER V7.10 SET 09/29/2005 20:22:09 PAGE 1
C51 COMPILER V7.10, COMPILATION OF MODULE SET
OBJECT MODULE PLACED IN set.OBJ
COMPILER INVOKED BY: D:\Program Files\KEIL\C51\BIN\C51.EXE set.c ROM(SMALL) OPTIMIZE(5,SPEED) BROWSE DEBUG OBJECTEXTEND
line level source
1 #include <reg2051.h>
2 #include "Dialer_program.h"
3
4 unsigned char data address;
5 //unsigned char data key;
6 unsigned char data setkeycount;
7 unsigned char *ptr;
8 unsigned char ipRouter[3];
9 unsigned char data keytemp0;
10 unsigned char data keytemp1;
11 unsigned char data keytemp2;
12 unsigned char data key;
13
14 bit setbit;
15 bit keyack;
16
17 #define bcbcbb 80 //add + 7
18 #define bcbc04 12 //add + 2
19 #define bcbc05 19 //add + 7
20 #define bcbc06 27 //add + 9
21 #define bcbc07 37 //add + 9
22 #define bccc 47 //add + 32
23 #define bcbc56 88 //add + 9
24 #define bcbc08 98 //add + 7
25 #define bcbc03 106 //add + 2
26 #define bcbc50 108 //add + 2
27 #define bccb 106
28 #define bbccc 0x12 //add = 8 char
29 #define bbccb 0x12 //add = 8 char
30 #define bbcbb 0x12 //add = 4 char psid
31 #define error_nkey 0xffff
32
33 void setkey(void){
34 1 static unsigned char odd = 1;
35 1 if (setbit & keyack){
36 2 if (odd){
37 3 keybuf[nkey] = key * 0x10;
38 3 odd=~odd;
39 3 }
40 2 else {
41 3 keybuf[nkey] = keybuf[nkey] | key;
42 3 odd = ~odd;
43 3 nkey++;
44 3 }
45 2 keyack = 0;
46 2
47 2 switch (nkey){
48 3 case 0x00: case 0x01:case 0x02:case 0x04:
49 3 setkeycount ++;
50 3 nkey++; //*
51 3 break;
52 3 case 0x03:
53 3 switch (keybuf[0]*0x100+keybuf[1]){
54 4 case 0xbcbc:
55 4 setkeycount++;
C51 COMPILER V7.10 SET 09/29/2005 20:22:09 PAGE 2
56 4 nkey ++;
57 4 break;
58 4 case 0xbccc:
59 4 setkeycount++;
60 4 ptr = &p[0];
61 4 nkey = bccc;
62 4 break;
63 4 case 0xbbcc:
64 4 setkeycount++;
65 4 nkey = bccb;
66 4 break;
67 4 case 0xbccb:
68 4 setkeycount++;
69 4 nkey = bccb;
70 4 break;
71 4 default:
72 4 play(errormusic);
73 4 setkeycount=0;
74 4 nkey = error_nkey;
75 4 break;
76 4 }
77 3 break;
78 3 case 0x05:
79 3 switch (keybuf[2]){
80 4 case 0x00: //复位
81 4 ipRouter[0]=0x00;
82 4 ipRouter[1]=0x11;
83 4 ipRouter[2]=0x1f;
84 4 // EEWritePage (&ipRouter[0], (ipRouter_add/0x100), (ipRouter_add%0x100), 3); //读IP路由信息
85 4
86 4
87 4 case 0x08: //设定本地手机路由
88 4 setkeycount++;
89 4 nkey = bcbc08;
90 4 play(suremusic);
91 4 break;
92 4 default:
93 4 play(errormusic);
94 4 nkey = error_nkey;
95 4 break;
96 4
97 4 }
98 3 break;
99 3 //*********************************************************************设置ip路由
100 3 case bcbc08:
101 3 case bcbc08+1:
102 3 case bcbc08+2:
103 3 case bcbc08+3:
104 3 case bcbc08+4:
105 3 setkeycount++;
106 3 nkey++;
107 3 break;
108 3 case bcbc08+5:
109 3 if (key == 0x0c){
110 4 // EEWritePage (&keybuf[3], (ipRouter_add/0x100), ipRouter_add%0x100, 3);
111 4 // EEDelayMs(0x50);
112 4 // EEReadPage (&ipRouter[0], (ipRouter_add/0x100), ipRouter_add%0x100, 3);
113 4 if (keybuf[3] != ipRouter[0]){play(errormusic);return;}
114 4 play(suremusic);
115 4 nkey = 0;
116 4 }
117 3 else play(errormusic);
C51 COMPILER V7.10 SET 09/29/2005 20:22:09 PAGE 3
118 3 break;
119 3
120 3 //*********************************************************************设置ip号
121 3 case bccc:
122 3 switch(keybuf[2]){
123 4 case 0x10:
124 4 case 0x20:
125 4 case 0x30:
126 4 case 0x40:
127 4 case 0x50:
128 4 nkey = (bccc+1);
129 4 setkeycount = 3;
130 4 odd = 1;
131 4 play(suremusic);
132 4 break;
133 4 default:
134 4 play(errormusic);
135 4 nkey = error_nkey;
136 4 break;
137 4 }
138 3 break;
139 3 case(bccc+1): case(bccc+2): case(bccc+3): case(bccc+4):
140 3 case(bccc+5): case(bccc+6): case(bccc+7): case(bccc+8):
141 3 case(bccc+9): case(bccc+10):case(bccc+11):case(bccc+12):
142 3 case(bccc+13):case(bccc+14):case(bccc+15):case(bccc+16):
143 3 case(bccc+17):case(bccc+18):case(bccc+19):case(bccc+20):
144 3 case(bccc+21):case(bccc+22):case(bccc+23):case(bccc+24):
145 3 case(bccc+25):case(bccc+26):case(bccc+27):case(bccc+28):
146 3 case(bccc+29):case(bccc+30):case(bccc+31):case(bccc+32):
147 3
148 3 if ((keytemp0 != key || (key < 0x0a))){
149 4 keytemp2 = keytemp1;
150 4 keytemp0 = keytemp1 = key;
151 4 if (keytemp2 != 0xff){
152 5 if (odd) {
153 6 *ptr = ((keytemp2 * 0x10 )|0x0f);
154 6 }
155 5 else {
156 6 *ptr &= (keytemp2|0xf0);
157 6 ptr++;
158 6 }
159 5 }
160 4 nkey++;
161 4 }
162 3 else {
163 4 if ((key==0x0b) && (keytemp1 < 0x0f))keytemp1 ++;
164 4 odd = ~odd;
165 4 if (key==0x0c){
166 5 // EEWritePage (&p[0], (ip_number_add/0x100), ((keybuf[2]-0x10))%0x100, 16); //读IP路由信息
167 5 EEReadPage (&p[16], (ip_number_add/0x100), ((keybuf[2]-0x10))%0x100, 3); //读IP路由信息
168 5 if ((p[16] == p[0]) && (p[17] == p[1]) && (p[18] == p[2])){
169 6 play(suremusic);
170 6 }
171 5 else {
172 6 play(errormusic);
173 6 nkey = error_nkey;
174 6 }
175 5 }
176 4 }
177 3 break;
178 3 //*********************************************************************设置ip号
179 3 }
C51 COMPILER V7.10 SET 09/29/2005 20:22:09 PAGE 4
180 2 }
181 1 }
182
183 void scankey (void) interrupt 0 {
184 1 unsigned char key;
185 1 STD = 1;
186 1 if (!STD){
187 2 audiopin = 1;
188 2
189 2 key = _9270 & 0x0f;
190 2
191 2 key = key >>1;
192 2 a3 = CY;
193 2 key = key >>1;
194 2 a2 = CY;
195 2 key = key >>1;
196 2 a1 = CY;
197 2 key = key >>1;
198 2 a0 = CY;
199 2 a4 = 1;
200 2 a5 = 1;
201 2 a6 = 0;
202 2 a7 = 0;
203 2 keybuf[nkey] = B;
204 2 while(!STD);
205 2 nkey++;
206 2 if (B == 0x3C){
207 3 // led = ~led;
208 3 dialbit = 1;
209 3 // still = 1;
210 3 }
211 2 // led = ~led;
212 2 }
213 1 }
214
MODULE INFORMATION: STATIC OVERLAYABLE
CODE SIZE = 515 ----
CONSTANT SIZE = ---- ----
XDATA SIZE = ---- ----
PDATA SIZE = ---- ----
DATA SIZE = 13 ----
IDATA SIZE = ---- ----
BIT SIZE = 2 ----
END OF MODULE INFORMATION.
C51 COMPILATION COMPLETE. 0 WARNING(S), 0 ERROR(S)
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -