📄 电子密码锁.lst
字号:
210 2 delay(2000);
211 2 }
212 1 }
213 //***********************************
214 void get_key(void)
215 {
216 1 KEY=0xfe; // p1=1111 1110
217 1 if(!P14)
218 1 {
219 2 delay(200);
220 2 if(!P14)
221 2 {
222 3 while(!P14);
223 3 key=tab[8];
224 3 // key_value=7;
225 3 kk=1;
226 3 }
227 2 }
228 1
229 1 if(!P15)
230 1 {
231 2 delay(200);
232 2 if(!P15)
233 2 {
234 3 while(!P15);
235 3 key=tab[9];
236 3 // key_value=8;
237 3 kk=1;
238 3 }
239 2 }
240 1 if(!P16)
241 1 {
C51 COMPILER V7.07 电子密码__ 11/09/2007 09:01:13 PAGE 5
242 2 delay(200);
243 2 if(!P16)
244 2 {
245 3 while(!P16);
246 3 key=tab[10];
247 3 // key_value=9;
248 3 kk=1;
249 3 }
250 2 }
251 1 KEY=0xfd; //p1 1111 1101
252 1 if(!P14)
253 1 {
254 2 delay(200);
255 2 if(!P14)
256 2 {
257 3 while(!P14);
258 3 key=tab[5];
259 3 // key_value=4;
260 3 kk=1;
261 3 }
262 2 }
263 1
264 1 if(!P15)
265 1 {
266 2 delay(200);
267 2 if(!P15)
268 2 {
269 3 while(!P15);
270 3 key=tab[6];
271 3 // key_value=5;
272 3 kk=1;
273 3 }
274 2 }
275 1 if(!P16)
276 1 {
277 2 delay(200);
278 2 if(!P16)
279 2 {
280 3 while(!P16);
281 3 key=tab[7];
282 3 // key_value=6;
283 3 kk=1;
284 3 }
285 2 }
286 1
287 1 KEY=0xfb; //p1 1111 1011
288 1 if(!P14)
289 1 {
290 2 delay(200);
291 2 if(!P14)
292 2 {
293 3 while(!P14);
294 3 key=tab[2];
295 3 // key_value=1;
296 3 kk=1;
297 3 }
298 2 }
299 1
300 1 if(!P15)
301 1 {
302 2 delay(200);
303 2 if(!P15)
C51 COMPILER V7.07 电子密码__ 11/09/2007 09:01:13 PAGE 6
304 2 {
305 3 while(!P15);
306 3 key=tab[3];
307 3 // key_value=2;
308 3 kk=1;
309 3 }
310 2 }
311 1 if(!P16)
312 1 {
313 2 delay(200);
314 2 if(!P16)
315 2 {
316 3 while(!P16);
317 3 key=tab[4];
318 3 // key_value=3;
319 3 kk=1;
320 3 }
321 2 }
322 1 /* if(!P17)
323 1 {
324 1 delay(200);
325 1 if(!P17)
326 1 {
327 1 while(!P17);
328 1 init_main();
329 1 }
330 1 }
331 1 */
332 1 KEY=0xf7;
333 1 if(!P14)
334 1 {
335 2 delay(200);
336 2 if(!P14)
337 2 {
338 3 while(!P14);
339 3 //statet=0;
340 3 init_main();
341 3
342 3 // kk=1;
343 3 }
344 2 }
345 1 if(!P15)
346 1 {
347 2 delay(200);
348 2 if(!P15)
349 2 {
350 3 while(!P15);
351 3 key=tab[1];
352 3 // key_value=0;
353 3 kk=1;
354 3 }
355 2 }
356 1 if(!P16)
357 1 {
358 2 delay(200);
359 2 if(!P16)
360 2 {
361 3 while(!P16);
362 3 key=tab[12];
363 3 kk=1;
364 3 }
365 2 }
C51 COMPILER V7.07 电子密码__ 11/09/2007 09:01:13 PAGE 7
366 1 if(!P17)
367 1 {
368 2 delay(200);
369 2 if(!P17)
370 2 {
371 3 while(!P17);
372 3 key=tab[11];
373 3 kk=1;
374 3 }
375 2 }
376 1 }
377 //***********************************
378 void clear_arry(uchar *p,uchar n)
379 { uchar j;
380 1 for(j=0;j<=n;j++,p++)
381 1 *p=null1;
382 1 }
383
384 //***********************************
385 void calc_disp(uchar array[9],uchar n)
386 {
387 1 uchar leddisp[9];
388 1 uchar i;
389 1
390 1 for(i=0;i<n;i++)
391 1 leddisp[i]=array[i];
392 1 i=0;
393 1 for(i=0;i<8;i++)
394 1 {switch(i)
395 2 {case 0:{P22=0;P23=0;P24=0;}break;
396 3 case 1:{P22=1;P23=0;P24=0;}break;
397 3 case 2:{P22=0;P23=1;P24=0;}break;
398 3 case 3:{P22=1;P23=1;P24=0;}break;
399 3 case 4:{P22=0;P23=0;P24=1;}break;
400 3 case 5:{P22=1;P23=0;P24=1;}break;
401 3 case 6:{P22=0;P23=1;P24=1;}break;
402 3 case 7:{P22=1;P23=1;P24=1;}break;
403 3 default : break;
404 3 }
405 2 P0=leddisp[i];
406 2 delay(50);
407 2 }
408 1 }
409
410 //***********************************
411 //***********************************
412 //***********************************
MODULE INFORMATION: STATIC OVERLAYABLE
CODE SIZE = 1595 ----
CONSTANT SIZE = ---- ----
XDATA SIZE = ---- ----
PDATA SIZE = ---- ----
DATA SIZE = 36 65
IDATA SIZE = ---- ----
BIT SIZE = ---- ----
END OF MODULE INFORMATION.
C51 COMPILATION COMPLETE. 0 WARNING(S), 0 ERROR(S)
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -