📄 picc_keyboard.lst
字号:
244 0747 26A2 fcall _delay
245 0748 3099 movlw -103
246 0749 0088 movwf 8 ;volatile
247 074A 301F movlw 31
248 074B 0085 movwf 5 ;volatile
249 074C 2EA2 ljmp _delay
250 074D l33
251 ;PICC_Keyboard.c: 141: case 0x7e:
252 ;PICC_Keyboard.c: 142: PORTD=0xa4;PORTA=0X2F;de
+ lay();PORTD=0x92;PORTA=0X1F;delay();break;
253 074D 30A4 movlw -92
254 074E 0088 movwf 8 ;volatile
255 074F 302F movlw 47
256 0750 0085 movwf 5 ;volatile
257 0751 26A2 fcall _delay
258 0752 3092 movlw -110
259 0753 0088 movwf 8 ;volatile
260 0754 301F movlw 31
261 0755 0085 movwf 5 ;volatile
262 0756 2EA2 ljmp _delay
263 0757 l30004
264 0757 0872 movf btemp+2,w
265 0758 3A77 xorlw 119
266 0759 1903 btfsc 3,2
267 075A 2F2F goto l30
268 075B 3A0C xorlw 12
269 075C 1903 btfsc 3,2
270 075D 2F39 goto l31
271 075E 3A06 xorlw 6
272 075F 1903 btfsc 3,2
273 0760 2F43 goto l32
274 0761 3A03 xorlw 3
275 0762 1903 btfsc 3,2
276 0763 2F4D goto l33
277 0764 3AC9 xorlw 201
278 0765 1903 btfsc 3,2
279 0766 2F07 goto l26
280 0767 3A0C xorlw 12
281 0768 1903 btfsc 3,2
282 0769 2F11 goto l27
283 076A 3A06 xorlw 6
284 076B 1903 btfsc 3,2
285 076C 2F1B goto l28
286 076D 3A03 xorlw 3
287 076E 1903 btfsc 3,2
288 076F 2F25 goto l29
289 0770 3A69 xorlw 105
290 0771 1903 btfsc 3,2
291 0772 2EDF goto l22
292 0773 3A0C xorlw 12
293 0774 1903 btfsc 3,2
294 0775 2EE9 goto l23
295 0776 3A06 xorlw 6
296 0777 1903 btfsc 3,2
297 0778 2EF3 goto l24
298 0779 3A03 xorlw 3
299 077A 1903 btfsc 3,2
300 077B 2EFD goto l25
301 077C 3A39 xorlw 57
302 077D 1903 btfsc 3,2
303 077E 2EB6 goto l18
304 077F 3A0C xorlw 12
305 0780 1903 btfsc 3,2
306 0781 2EC1 goto l19
307 0782 3A06 xorlw 6
308 0783 1903 btfsc 3,2
309 0784 2ECB goto l20
310 0785 3A03 xorlw 3
311 0786 1903 btfsc 3,2
312 0787 2ED5 goto l21
313 0788 3A11 xorlw 17
314 0789 1D03 btfss 3,2
315 078A 0008 return
316 ;PICC_Keyboard.c: 143: case 0xff:
317 ;PICC_Keyboard.c: 144: PORTD=0x8e;PORTA=0X2F;de
+ lay(); PORTD=0x8e; PORTA=0X1F; delay();break;
318 078B 308E movlw -114
319 078C 0088 movwf 8 ;volatile
320 078D 302F movlw 47
321 078E 0085 movwf 5 ;volatile
322 078F 26A2 fcall _delay
323 0790 308E movlw -114
324 0791 0088 movwf 8 ;volatile
325 0792 301F movlw 31
326 0793 0085 movwf 5 ;volatile
327 0794 2EA2 ljmp _delay
328 0795 l17
329 0795 1283 bcf 3,5
330 0796 1303 bcf 3,6 ;carry unused
331 0797 0821 movf _result+1,w
332 0798 00F3 movwf btemp+3
333 0799 0820 movf _result,w
334 079A 00F2 movwf btemp+2
335 079B 0873 movf btemp+3,w
336 079C 1D03 btfss 3,2
337 079D 0008 return
338 079E 2F57 goto l30004
339 ;PICC_Keyboard.c: 56: void scan()
340 ;PICC_Keyboard.c: 57: {
341 079F _scan
342 ;PICC_Keyboard.c: 58: PORTC=0XF7;
343 079F 30F7 movlw -9
344 07A0 0183 clrf 3 ;select bank 0
345 07A1 0087 movwf 7 ;volatile
346 ;PICC_Keyboard.c: 59: asm("nop");
347 07A2 0000 nop ;#
348 ;PICC_Keyboard.c: 60: result=PORTC;
349 07A3 0807 movf 7,w ;volatile
350 07A4 00A0 movwf _result
351 07A5 01A1 clrf _result+1
352 ;PICC_Keyboard.c: 61: result=result&0xf0;
353 07A6 30F0 movlw 240
354 07A7 05A0 andwf _result
355 07A8 01A1 clrf _result+1
356 ;PICC_Keyboard.c: 62: if(result!=0xf0)
357 07A9 0820 movf _result,w
358 07AA 3AF0 xorlw 240
359 07AB 0421 iorwf _result+1,w
360 07AC 1903 btfsc 3,2
361 07AD 2FB1 goto l7
362 ;PICC_Keyboard.c: 63: {
363 07AE 3007 movlw 7
364 07AF 04A0 iorwf _result
365 ;PICC_Keyboard.c: 65: }
366 07B0 0008 return
367 07B1 l7
368 ;PICC_Keyboard.c: 67: {
369 07B1 30FB movlw -5
370 07B2 0087 movwf 7 ;volatile
371 ;PICC_Keyboard.c: 69: asm("nop");
372 07B3 0000 nop ;#
373 ;PICC_Keyboard.c: 70: result=PORTC;
374 07B4 0807 movf 7,w ;volatile
375 07B5 00A0 movwf _result
376 07B6 01A1 clrf _result+1
377 ;PICC_Keyboard.c: 71: result=result&0xf0;
378 07B7 30F0 movlw 240
379 07B8 05A0 andwf _result
380 07B9 01A1 clrf _result+1
381 ;PICC_Keyboard.c: 72: if(result!=0xf0)
382 07BA 0820 movf _result,w
383 07BB 3AF0 xorlw 240
384 07BC 0421 iorwf _result+1,w
385 07BD 1903 btfsc 3,2
386 07BE 2FC2 goto l9
387 ;PICC_Keyboard.c: 73: {
388 07BF 300B movlw 11
389 07C0 04A0 iorwf _result
390 ;PICC_Keyboard.c: 75: }
391 07C1 0008 return
392 07C2 l9
393 ;PICC_Keyboard.c: 77: {
394 07C2 30FD movlw -3
395 07C3 0087 movwf 7 ;volatile
396 ;PICC_Keyboard.c: 79: asm("nop");
397 07C4 0000 nop ;#
398 ;PICC_Keyboard.c: 80: result=PORTC;
399 07C5 0807 movf 7,w ;volatile
400 07C6 00A0 movwf _result
401 07C7 01A1 clrf _result+1
402 ;PICC_Keyboard.c: 81: result=result&0xf0;
403 07C8 30F0 movlw 240
404 07C9 05A0 andwf _result
405 07CA 01A1 clrf _result+1
406 ;PICC_Keyboard.c: 82: if(result!=0xf0)
407 07CB 0820 movf _result,w
408 07CC 3AF0 xorlw 240
409 07CD 0421 iorwf _result+1,w
410 07CE 1903 btfsc 3,2
411 07CF 2FD3 goto l11
412 ;PICC_Keyboard.c: 83: {
413 07D0 300D movlw 13
414 07D1 04A0 iorwf _result
415 ;PICC_Keyboard.c: 85: }
416 07D2 0008 return
417 07D3 l11
418 ;PICC_Keyboard.c: 87: {
419 07D3 30FE movlw -2
420 07D4 0087 movwf 7 ;volatile
421 ;PICC_Keyboard.c: 89: asm("nop");
422 07D5 0000 nop ;#
423 ;PICC_Keyboard.c: 90: result=PORTC;
424 07D6 0807 movf 7,w ;volatile
425 07D7 00A0 movwf _result
426 07D8 01A1 clrf _result+1
427 ;PICC_Keyboard.c: 91: result=result&0xf0;
428 07D9 30F0 movlw 240
429 07DA 05A0 andwf _result
430 07DB 01A1 clrf _result+1
431 ;PICC_Keyboard.c: 92: if(result!=0xf0)
432 07DC 0820 movf _result,w
433 07DD 3AF0 xorlw 240
434 07DE 0421 iorwf _result+1,w
435 07DF 1903 btfsc 3,2
436 07E0 2FE4 goto l13
437 ;PICC_Keyboard.c: 93: {
438 07E1 300E movlw 14
439 07E2 04A0 iorwf _result
440 ;PICC_Keyboard.c: 95: }
441 07E3 0008 return
442 07E4 l13
443 ;PICC_Keyboard.c: 97: {
444 07E4 30FF movlw 255
445 07E5 00A0 movwf _result
446 07E6 01A1 clrf _result+1
447 ;PICC_Keyboard.c: 99: }
448 ;PICC_Keyboard.c: 100: }
449 ;PICC_Keyboard.c: 101: }
450 ;PICC_Keyboard.c: 102: }
451 ;PICC_Keyboard.c: 103: }
452 07E7 0008 return
453 ;PICC_Keyboard.c: 44: void init()
454 ;PICC_Keyboard.c: 45: {
455 07E8 _init
456 ;PICC_Keyboard.c: 46: ADCON1=0X07;
457 07E8 3007 movlw 7
458 07E9 1683 bsf 3,5
459 07EA 1303 bcf 3,6 ;carry unused
460 07EB 009F movwf 31 ;volatile
461 ;PICC_Keyboard.c: 47: TRISA=0X0f;
462 07EC 300F movlw 15
463 07ED 0085 movwf 5 ;volatile
464 ;PICC_Keyboard.c: 48: TRISC=0XF0;
465 07EE 30F0 movlw -16
466 07EF 0087 movwf 7 ;volatile
467 ;PICC_Keyboard.c: 49: TRISD=0X00;
468 07F0 0188 clrf 8 ;volatile
469 ;PICC_Keyboard.c: 50: PORTA=0XFF;
470 07F1 30FF movlw -1
471 07F2 1283 bcf 3,5
472 07F3 0085 movwf 5 ;volatile
473 ;PICC_Keyboard.c: 51: PORTD=0XFF;
474 07F4 0088 movwf 8 ;volatile
475 ;PICC_Keyboard.c: 52: }
476 07F5 0008 return
477 07F6 _main
478 ;PICC_Keyboard.c: 33: init();
479 07F6 27E8 fcall _init
480 07F7 l3
481 ;PICC_Keyboard.c: 34: while(1)
482 ;PICC_Keyboard.c: 35: {
483 07F7 279F fcall _scan
484 ;PICC_Keyboard.c: 38: display(result);
485 07F8 0820 movf _result,w
486 07F9 00A2 movwf ?_display
487 07FA 0821 movf _result+1,w
488 07FB 00A3 movwf ?_display+1
489 07FC 26B5 120A 118A fcall _display
490 ;PICC_Keyboard.c: 39: }
491 07FF 2FF7 goto l3
492
493 psect text5
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
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -