📄 i2c_yj.lst
字号:
464 01D4 6ED9 movwf fsr2l,c
465 01D6 0E05 movlw high _str
466 01D8 6EDA movwf fsr2h,c
467 ;i2c_yj.c: 121: if(x<0){
468 01DA 0100 movlb __Lparam shr (0+8)
469 01DC AFF8 btfss (?_itoa+1)^(__Lparam& (0+65280)),7
470 01DE D00C goto l42
471 ;i2c_yj.c: 122: *p2++='-';
472 01E0 CFD9 FFE9 movff fsr2l,fsr0l
473 01E4 CFDA FFEA movff fsr2h,fsr0h
474 01E8 4AD9 infsnz fsr2l,f,c
475 01EA 2ADA incf fsr2h,f,c
476 01EC 0E2D movlw 45
477 01EE 6EEF movwf indf0,c
478 ;i2c_yj.c: 123: x=-x;
479 01F0 6DF7 negf ?_itoa^(__Lparam& (0+65280))
480 01F2 1FF8 comf (?_itoa+1)^(__Lparam& (0+65280)),f
481 01F4 B0D8 btfsc status,0,c
482 01F6 2BF8 incf (?_itoa+1)^(__Lparam& (0+65280)),f
483 01F8 l42:
484 ;i2c_yj.c: 124: }
485 01F8 C0F7 FFF6 movff ?_itoa,tblptrl
486 01FC C0F8 FFF7 movff ?_itoa+1,tblptrh
487 ;i2c_yj.c: 126: p=str1;
488 0200 0EFA movlw low (?a_itoa+1)
489 0202 6EF3 movwf prodl,c
490 0204 0E00 movlw high (?a_itoa+1)
491 0206 6EF4 movwf prodh,c
492 ;i2c_yj.c: 127: j=0;
493 0208 0100 movlb __Lparam shr (0+8)
494 020A 6BF9 clrf ?a_itoa^(__Lparam& (0+65280))
495 ;i2c_yj.c: 128: while(n!=0){
496 020C l43:
497 ;i2c_yj.c: 133: }
498 020C 50F7 movf tblptrh,w,c
499 020E 10F6 iorwf tblptrl,w,c
500 0210 B4D8 btfsc status,2,c
501 0212 D024 goto u140
502 ;i2c_yj.c: 129: chn=n%10;
503 0214 0E0A movlw 10
504 0216 6E02 movwf btemp+2
505 0218 6A03 clrf btemp+3
506 021A CFF6 F000 movff tblptrl,btemp
507 021E CFF7 F001 movff tblptrh,btemp+1
508 0222 ECDB F002 call lwmod
509 0226 5000 movf btemp,w
510 0228 6EE1 movwf fsr1l,c
511 ;i2c_yj.c: 130: n=n/10;
512 022A 0E0A movlw 10
513 022C 6E02 movwf btemp+2
514 022E 6A03 clrf btemp+3
515 0230 CFF6 F000 movff tblptrl,btemp
516 0234 CFF7 F001 movff tblptrh,btemp+1
517 0238 ECDB F002 call lwdiv
518 023C C004 FFF6 movff btemp+4,tblptrl
519 0240 C005 FFF7 movff btemp+5,tblptrh
520 ;i2c_yj.c: 131: *p++=chn+'0';
521 0244 CFF3 FFE9 movff prodl,fsr0l
522 0248 CFF4 FFEA movff prodh,fsr0h
523 024C 4AF3 infsnz prodl,f,c
524 024E 2AF4 incf prodh,f,c
525 0250 50E1 movf fsr1l,w,c
526 0252 0F30 addlw 48
527 0254 6EEF movwf indf0,c
528 ;i2c_yj.c: 132: j++;
529 0256 0100 movlb __Lparam shr (0+8)
530 0258 2BF9 incf ?a_itoa^(__Lparam& (0+65280)),f
531 025A D7D8 goto l43
532 025C u140:
533 ;i2c_yj.c: 134: if(j!=0){
534 025C 0100 movlb __Lparam shr (0+8)
535 025E 51F9 movf ?a_itoa^(__Lparam& (0+65280)),w
536 0260 B4D8 btfsc status,2,c
537 0262 D01A goto l46
538 ;i2c_yj.c: 135: p--;
539 0264 06F3 decf prodl,f,c
540 0266 A0D8 btfss status,0,c
541 0268 06F4 decf prodh,f,c
542 ;i2c_yj.c: 136: for(i=0;i<j;i++)*p2++=*p--;
543 026A 6A00 clrf btemp
544 026C l50:
545 026C 0100 movlb __Lparam shr (0+8)
546 026E 51F9 movf ?a_itoa^(__Lparam& (0+65280)),w
547 0270 5C00 subwf btemp,w
548 0272 B0D8 btfsc status,0,c
549 0274 D019 goto l51
550 0276 CFF3 FFE1 movff prodl,fsr1l
551 027A CFF4 FFE2 movff prodh,fsr1h
552 027E 06F3 decf prodl,f,c
553 0280 0E00 movlw 0
554 0282 5AF4 subwfb prodh,f,c
555 0284 CFD9 FFE9 movff fsr2l,fsr0l
556 0288 CFDA FFEA movff fsr2h,fsr0h
557 028C 4AD9 infsnz fsr2l,f,c
558 028E 2ADA incf fsr2h,f,c
559 0290 CFE7 FFEF movff indf1,indf0
560 0294 2A00 incf btemp,f
561 0296 D7EA goto l50
562 ;i2c_yj.c: 137: }
563 0298 l46:
564 0298 CFD9 FFE9 movff fsr2l,fsr0l
565 029C CFDA FFEA movff fsr2h,fsr0h
566 02A0 4AD9 infsnz fsr2l,f,c
567 02A2 2ADA incf fsr2h,f,c
568 02A4 0E30 movlw 48
569 02A6 6EEF movwf indf0,c
570 02A8 l51:
571 ;i2c_yj.c: 139: *p2=0;
572 02A8 0E00 movlw 0
573 02AA 6ADF clrf indf2,c
574 ;i2c_yj.c: 140: return;
575 ;i2c_yj.c: 141: }
576 02AC 0012 return
577 02AE FFFF dw 65535
578 02B0 D790 goto f14462
579 ;i2c_yj.c: 146: void initial()
580 ;i2c_yj.c: 147: {
581 02B2 _initial:
582 02B2 FFFF dw 65535
583 02B4 f14472:
584 0000
585 ;i2c_yj.c: 148: INTCON=0x00;
586 02B4 6AF2 clrf intcon,c ;volatile
587 ;i2c_yj.c: 149: ADCON1=0X07;
588 02B6 0E07 movlw 7
589 02B8 6EC1 movwf 4033,c
590 ;i2c_yj.c: 150: PIE1=0;
591 02BA 6A9D clrf 3997,c
592 ;i2c_yj.c: 151: PIE2=0;
593 02BC 6AA0 clrf 4000,c
594 ;i2c_yj.c: 152: PIE3=0;
595 02BE 6AA3 clrf 4003,c
596 ;i2c_yj.c: 153: PORTD=0x1f;
597 02C0 0E1F movlw 31
598 02C2 6E83 movwf 3971,c ;volatile
599 ;i2c_yj.c: 154: TRISD=0x1f;
600 02C4 6E95 movwf 3989,c ;volatile
601 ;i2c_yj.c: 155: }
602 02C6 0012 return
603 02C8 FFFF dw 65535
604 02CA D7F4 goto f14472
605 ;i2c_yj.c: 160: void I2C_Initial()
606 ;i2c_yj.c: 161: {
607 02CC _I2C_Initial:
608 02CC FFFF dw 65535
609 02CE f14482:
610 0000
611 ;i2c_yj.c: 162: SSPCON1=0X08;
612 02CE 0E08 movlw 8
613 02D0 6EC6 movwf 4038,c ;volatile
614 ;i2c_yj.c: 163: TRISC=TRISC|0X08;
615 02D2 8694 bsf 3988,3,c ;volatile
616 ;i2c_yj.c: 164: TRISC=TRISC|0X10;
617 02D4 8894 bsf 3988,4,c ;volatile
618 ;i2c_yj.c: 167: SSPADD=31;
619 02D6 0E1F movlw 31
620 02D8 6EC8 movwf 4040,c
621 ;i2c_yj.c: 170: SSPSTAT=0X80;
622 02DA 0E80 movlw 128
623 02DC 6EC7 movwf 4039,c ;volatile
624 ;i2c_yj.c: 171: SSPCON2=0;
625 02DE 6AC5 clrf 4037,c ;volatile
626 ;i2c_yj.c: 173: SSPIF=0;
627 02E0 969E bcf 3998,3,c ;volatile
628 ;i2c_yj.c: 174: SSPEN=1;
629 02E2 8AC6 bsf 4038,5,c
630 ;i2c_yj.c: 175: }
631 02E4 0012 return
632 02E6 FFFF dw 65535
633 02E8 D7F2 goto f14482
634 ;i2c_yj.c: 177: void WrtAckTest(void)
635 ;i2c_yj.c: 178: {
636 02EA _WrtAckTest:
637 02EA FFFF dw 65535
638 02EC f14492:
639 0000
640 02EC l57:
641 ;i2c_yj.c: 180: do {;}while(SSPIF==0);
642 02EC A69E btfss 3998,3,c ;volatile
643 02EE D7FE goto l57
644 ;i2c_yj.c: 181: SSPIF=0;
645 02F0 969E bcf 3998,3,c ;volatile
646 ;i2c_yj.c: 182: }
647 02F2 0012 return
648 02F4 FFFF dw 65535
649 02F6 D7FA goto f14492
650 ;i2c_yj.c: 184: void I2C_IDLE(void)
651 ;i2c_yj.c: 185: {
652 02F8 _I2C_IDLE:
653 02F8 FFFF dw 65535
654 02FA f14502:
655 0000
656 02FA l61:
657 ;i2c_yj.c: 186: do {;}while((SSPSTAT&0X04)==1);
658 02FA CFC7 F000 movff 4039,btemp ;volatile
659 02FE 0E04 movlw 4
660 0300 1600 andwf btemp,f
661 0302 0400 decf btemp,w
662 0304 B4D8 btfsc status,2,c
663 0306 D7F9 goto l61
664 0308 l64:
665 ;i2c_yj.c: 187: do {;}while((SSPCON2&0X1F)==1);
666 0308 CFC5 F000 movff 4037,btemp ;volatile
667 030C 0E1F movlw 31
668 030E 1600 andwf btemp,f
669 0310 0400 decf btemp,w
670 0312 A4D8 btfss status,2,c
671 ;i2c_yj.c: 188: }
672 0314 0012 return
673 0316 D7F8 goto l64
674 0318 FFFF dw 65535
675 031A D7EF goto f14502
676 031C 00F7 dw ?_Initial_8583
677 031E _Initial_8583:
678 031E FFFF dw 65535
679 0320 f14512:
680 0000
681 ; _address loaded to fsr1l
682 0320 6EE1 movwf fsr1l,c
683 ;i2c_yj.c: 192: char i;
684 0322 DFEA call _I2C_IDLE ;wreg free
685 ;i2c_yj.c: 195: SEN=1;
686 0324 80C5 bsf 4037,0,c ;volatile
687 ;i2c_yj.c: 196: WrtAckTest();
688 0326 DFE1 call _WrtAckTest ;wreg free
689 ;i2c_yj.c: 198: SSPBUF=0xA2;
690 0328 0EA2 movlw 162
691 032A 6EC9 movwf 4041,c ;volatile
692 ;i2c_yj.c: 199: WrtAckTest();
693 032C DFDE call _WrtAckTest ;wreg free
694 ;i2c_yj.c: 201: SSPBUF=address;
695 032E 50E1 movf fsr1l,w,c
696 0330 6EC9 movwf 4041,c ;volatile
697 ;i2c_yj.c: 202: WrtAckTest();
698 0332 DFDB call _WrtAckTest ;wreg free
699 ;i2c_yj.c: 205: for(i=0;i<n;i++)
700 0334 6AD9 clrf fsr2l,c
701 0336 l69:
702 0336 0100 movlb __Lparam shr (0+8)
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -