📄 main.lst
字号:
253 ;main.c: 75: if((PORTB&0X0F)!=0X0F)
254 0761 0806 movf 6,w ;volatile
255 0762 390F andlw 15
256 0763 3A0F xorlw 15
257 0764 1903 btfsc 3,2
258 0765 2FC5 goto l22
259 ;main.c: 76: {
260 0766 0806 movf 6,w ;volatile
261 0767 390F andlw 15
262 0768 38F0 iorlw -16
263 0769 00A1 movwf ?a_martric_key_scan
264 ;main.c: 78: key_result=(~code_h)+(~code_l);
265 076A 0921 comf ?a_martric_key_scan,w
266 076B 00F0 movwf btemp
267 076C 0922 comf ?a_martric_key_scan+1,w
268 076D 0770 addwf btemp,w
269 076E 00A3 movwf ?a_martric_key_scan+2
270 ;main.c: 79: switch(key_result)
271 076F 2F92 goto l24
272 0770 l25
273 ;main.c: 80: {
274 0770 01A3 clrf ?a_martric_key_scan+2
275 0771 2FC3 goto l23
276 0772 l26
277 ;main.c: 82: case 0x12:key_result=1;break;
278 0772 01A3 clrf ?a_martric_key_scan+2
279 0773 0AA3 incf ?a_martric_key_scan+2
280 0774 2FC3 goto l23
281 0775 l27
282 ;main.c: 83: case 0x14:key_result=2;break;
283 0775 3002 movlw 2
284 0776 2F90 goto L13
285 0777 l28
286 ;main.c: 84: case 0x18:key_result=3;break;
287 0777 3003 movlw 3
288 0778 2F90 goto L13
289 0779 l29
290 ;main.c: 85: case 0x21:key_result=4;break;
291 0779 3004 movlw 4
292 077A 2F90 goto L13
293 077B l30
294 ;main.c: 86: case 0x22:key_result=5;break;
295 077B 3005 movlw 5
296 077C 2F90 goto L13
297 077D l31
298 ;main.c: 87: case 0x24:key_result=6;break;
299 077D 3006 movlw 6
300 077E 2F90 goto L13
301 077F l32
302 ;main.c: 88: case 0x28:key_result=7;break;
303 077F 3007 movlw 7
304 0780 2F90 goto L13
305 0781 l33
306 ;main.c: 89: case 0x41:key_result=8;break;
307 0781 3008 movlw 8
308 0782 2F90 goto L13
309 0783 l34
310 ;main.c: 90: case 0x42:key_result=9;break;
311 0783 3009 movlw 9
312 0784 2F90 goto L13
313 0785 l35
314 ;main.c: 91: case 0x44:key_result=10;break;
315 0785 300A movlw 10
316 0786 2F90 goto L13
317 0787 l36
318 ;main.c: 92: case 0x48:key_result=11;break;
319 0787 300B movlw 11
320 0788 2F90 goto L13
321 0789 l37
322 ;main.c: 93: case 0x81:key_result=12;break;
323 0789 300C movlw 12
324 078A 2F90 goto L13
325 078B l38
326 ;main.c: 94: case 0x82:key_result=13;break;
327 078B 300D movlw 13
328 078C 2F90 goto L13
329 078D l39
330 ;main.c: 95: case 0x84:key_result=14;break;
331 078D 300E movlw 14
332 078E 2F90 goto L13
333 078F l40
334 ;main.c: 96: case 0x88:key_result=15;
335 078F 300F movlw 15
336 0790 L13
337 0790 00A3 movwf ?a_martric_key_scan+2
338 ;main.c: 97: }
339 0791 2FC3 goto l23
340 0792 l24
341 0792 0823 movf ?a_martric_key_scan+2,w
342 0793 3A11 xorlw 17
343 0794 1903 btfsc 3,2
344 0795 2F70 goto l25
345 0796 3A03 xorlw 3
346 0797 1903 btfsc 3,2
347 0798 2F72 goto l26
348 0799 3A06 xorlw 6
349 079A 1903 btfsc 3,2
350 079B 2F75 goto l27
351 079C 3A0C xorlw 12
352 079D 1903 btfsc 3,2
353 079E 2F77 goto l28
354 079F 3A39 xorlw 57
355 07A0 1903 btfsc 3,2
356 07A1 2F79 goto l29
357 07A2 3A03 xorlw 3
358 07A3 1903 btfsc 3,2
359 07A4 2F7B goto l30
360 07A5 3A06 xorlw 6
361 07A6 1903 btfsc 3,2
362 07A7 2F7D goto l31
363 07A8 3A0C xorlw 12
364 07A9 1903 btfsc 3,2
365 07AA 2F7F goto l32
366 07AB 3A69 xorlw 105
367 07AC 1903 btfsc 3,2
368 07AD 2F81 goto l33
369 07AE 3A03 xorlw 3
370 07AF 1903 btfsc 3,2
371 07B0 2F83 goto l34
372 07B1 3A06 xorlw 6
373 07B2 1903 btfsc 3,2
374 07B3 2F85 goto l35
375 07B4 3A0C xorlw 12
376 07B5 1903 btfsc 3,2
377 07B6 2F87 goto l36
378 07B7 3AC9 xorlw 201
379 07B8 1903 btfsc 3,2
380 07B9 2F89 goto l37
381 07BA 3A03 xorlw 3
382 07BB 1903 btfsc 3,2
383 07BC 2F8B goto l38
384 07BD 3A06 xorlw 6
385 07BE 1903 btfsc 3,2
386 07BF 2F8D goto l39
387 07C0 3A0C xorlw 12
388 07C1 1903 btfsc 3,2
389 07C2 2F8F goto l40
390 07C3 l23
391 ;main.c: 98: return(key_result);
392 07C3 0823 movf ?a_martric_key_scan+2,w
393 07C4 0008 return
394 07C5 l22
395 ;main.c: 101: code_h=(code_h<<1)|0x01;
396 07C5 1403 bsf 3,0
397 07C6 0DA2 rlf ?a_martric_key_scan+1
398 07C7 l19
399 ;main.c: 102: }
400 07C7 0F22 incfsz ?a_martric_key_scan+1,w
401 07C8 2F5F goto l20
402 ;main.c: 103: }
403 ;main.c: 105: return(0);
404 07C9 3400 retlw 0
405 ;main.c: 25: void init()
406 ;main.c: 26: {
407 07CA _init
408 ;main.c: 27: TRISA=0;
409 07CA 1683 bsf 3,5
410 07CB 1303 bcf 3,6 ;carry unused
411 07CC 0185 clrf 5 ;volatile
412 ;main.c: 28: PORTA=0XFF;
413 07CD 30FF movlw -1
414 07CE 1283 bcf 3,5
415 07CF 0085 movwf 5 ;volatile
416 ;main.c: 29: TRISD=0;
417 07D0 1683 bsf 3,5
418 07D1 0188 clrf 8 ;volatile
419 ;main.c: 30: PORTD=0;
420 07D2 1283 bcf 3,5
421 07D3 0188 clrf 8 ;volatile
422 ;main.c: 31: TRISB=0X0F;
423 07D4 300F movlw 15
424 07D5 1683 bsf 3,5
425 07D6 0086 movwf 6 ;volatile
426 ;main.c: 32: PORTB=0;
427 07D7 1283 bcf 3,5
428 07D8 0186 clrf 6 ;volatile
429 ;main.c: 33: TRISE0=0;
430 07D9 1683 bsf 3,5
431 07DA 1009 bcf 9,0
432 ;main.c: 34: RE0=0;
433 07DB 1283 bcf 3,5
434 07DC 1009 bcf 9,0
435 ;main.c: 35: }
436 07DD 0008 return
437 ;main.c: 109: void main()
438 ;main.c: 110: {unsigned char key_num;
439 07DE _main
440 ; _key_num assigned to ?a_main+0
441 0000 _main$key_num set ?a_main
442 ;main.c: 111: init();
443 07DE 27CA fcall _init
444 07DF l44
445 ;main.c: 112: while(1)
446 ;main.c: 113: {
447 07DF 274B fcall _martric_key_scan
448 07E0 00A0 movwf ?a_main
449 ;main.c: 116: dig_tube(key_num,1,2,3,5,8);
450 07E1 01A1 clrf ?_dig_tube
451 07E2 0AA1 incf ?_dig_tube
452 07E3 3002 movlw 2
453 07E4 00A2 movwf ?_dig_tube+1
454 07E5 3003 movlw 3
455 07E6 00A3 movwf ?_dig_tube+2
456 07E7 3005 movlw 5
457 07E8 00A4 movwf ?_dig_tube+3
458 07E9 3008 movlw 8
459 07EA 00A5 movwf ?_dig_tube+4
460 07EB 0820 movf ?a_main,w
461 07EC 26E0 120A 118A fcall _dig_tube
462 ;main.c: 117: }
463 07EF 2FDF goto l44
464
465 psect text7
466 0000
467 0000
468 0000
469 0000
470 0000
471 0000
472 0000
473 0000
474 0000
475 0000
476 0000
477 0000
478 0000
479 0000
480 0000
481 0000
482 0000
483 0000
484 0000
485 0000
486 0000
487 0000
488 0000
489 0000
490 0000
491 0000
492 0000
493 0000
494 0000
495 0000
496 0000
497 0000
498 0000
499 0000
500 0000
501 0000
502 0000
503 0000
504 0000
505 0000
506 0000
507 0000
508 0000
509 0000
510 0000
511 0000
512 0000
513 0000
514 0000
515 0000
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -