isr.lst

来自「myson的MTV332的DEMO程序 主要功能有菜单的设计和无线遥控以及视频」· LST 代码 · 共 1,619 行 · 第 1/5 页

LST
1,619
字号
  74   4      				byMTV_IIC_TXRCBBUF = *SlaveB_Addr;
  75   4      			}
  76   3      			else
  77   3      			{
  78   4      				*SlaveB_Addr = byMTV_IIC_TXRCBBUF;
  79   4      				SlaveB_Addr++;
  80   4      			}
  81   3      		}
  82   2      	}
  83   1      	else if( ( temp & TXBI ) ) 	// send data
  84   1      	{
  85   2      		SlaveB_Addr++;
  86   2      		byMTV_IIC_TXRCBBUF = *SlaveB_Addr;
  87   2      	}
  88   1      
  89   1      	byMTV_IIC_INTFLG = 0;
  90   1      
  91   1      	//IE1 = 0;
  92   1      	EA = 1;
  93   1      }
  94          
  95          
  96          #ifdef _IR_
  97          /****************For IR interrupt**************/
  98          Timer1() interrupt 3
  99          {
 100   1      	TH1=256-200;  //200us reload
 101   1      	TL1=256-200;  //200us reload	
 102   1      
 103   1      	if(byIRstateHighCount > 32)
 104   1      		return;
 105   1      		
 106   1      	if((P3 & 0x04)==0x04)  //high
 107   1      		byIRstateHighCount++;
 108   1      	else  	
 109   1      		byIRstateLowCount++;	
 110   1      	
 111   1      }
 112          
 113          /***************for IR**************************/
 114          IR_INT0() interrupt  0  //INT 0
 115          {
 116   1      	if(byIRstateLowCount>16 || byIRstateHighCount>16)
 117   1      		IR_Step = 0;
 118   1      	
 119   1      	switch(IR_Step)
 120   1      	{
 121   2      		case 0 :			//start signal
 122   2      		
 123   2      			if((byIRstateLowCount>40) && (byIRstateHighCount>20))
 124   2      			{
 125   3      				IR_Step = 1;
C51 COMPILER V6.10  ISR                                                                    12/02/2004 10:58:52 PAGE 17  

 126   3      				IR_Data_Count = 0;
 127   3      				IR_Value.valDW = 0;
 128   3      			}			// repeat key
 129   2      			else if((byIRstateLowCount>40) && (byIRstateHighCount>8))
 130   2      			{
 131   3      				IR_RepeatFlag ++;
 132   3      			}			
 133   2      		break;
 134   2      		case 1 :			//data signal 
 135   2      			
 136   2      			if((byIRstateLowCount>1) && (byIRstateHighCount>6))
 137   2      			{
 138   3      				IR_Value.valDW = (IR_Value.valDW <<1) | 0x01;
 139   3      				IR_Data_Count++;
 140   3      			}
 141   2      			else if((byIRstateLowCount>1) && (byIRstateHighCount>0))
 142   2      			{
 143   3      				IR_Value.valDW = (IR_Value.valDW <<1);
 144   3      				IR_Data_Count++;
 145   3      			}
 146   2      
 147   2      			if(IR_Data_Count == 32)
 148   2      			{
 149   3      				IR_Step = 0;
 150   3      //				IR_DebugKey = IR_Value.valDW;
 151   3      				if(IR_Value.valW[0] == IR_Customer_Code)
 152   3      					IR_OldKey = IR_Value.valB[3];
 153   3      			}
 154   2      			
 155   2      		break;
 156   2      	}
 157   1      	
 158   1      	byIRstateHighCount=0; 	
 159   1      	byIRstateLowCount=0;
 160   1      }
 161          #endif
 162          
C51 COMPILER V6.10  ISR                                                                    12/02/2004 10:58:52 PAGE 18  

ASSEMBLY LISTING OF GENERATED OBJECT CODE


             ; FUNCTION Timer0 (BEGIN)
0000 C0E0              PUSH    ACC
0002 C083              PUSH    DPH
0004 C082              PUSH    DPL
0006 C0D0              PUSH    PSW
                                           ; SOURCE LINE # 4
                                           ; SOURCE LINE # 6
0008 758CFC            MOV     TH0,#0FCH
                                           ; SOURCE LINE # 7
000B 758A18            MOV     TL0,#018H
                                           ; SOURCE LINE # 9
000E 900000      E     MOV     DPTR,#EEP_Wait
0011 E0                MOVX    A,@DPTR
0012 6002              JZ      ?C0001
                                           ; SOURCE LINE # 10
0014 14                DEC     A
0015 F0                MOVX    @DPTR,A
0016         ?C0001:
                                           ; SOURCE LINE # 17
0016 900000      E     MOV     DPTR,#KeyReChkCnt
0019 E0                MOVX    A,@DPTR
001A 7002              JNZ     ?C0035
001C A3                INC     DPTR
001D E0                MOVX    A,@DPTR
001E         ?C0035:
001E 600E              JZ      ?C0002
                                           ; SOURCE LINE # 18
0020 900000      E     MOV     DPTR,#KeyReChkCnt+01H
0023 E0                MOVX    A,@DPTR
0024 24FF              ADD     A,#0FFH
0026 F0                MOVX    @DPTR,A
0027 900000      E     MOV     DPTR,#KeyReChkCnt
002A E0                MOVX    A,@DPTR
002B 34FF              ADDC    A,#0FFH
002D F0                MOVX    @DPTR,A
002E         ?C0002:
                                           ; SOURCE LINE # 20
002E 900000      E     MOV     DPTR,#OsdTimer
0031 E0                MOVX    A,@DPTR
0032 7002              JNZ     ?C0036
0034 A3                INC     DPTR
0035 E0                MOVX    A,@DPTR
0036         ?C0036:
0036 600E              JZ      ?C0003
                                           ; SOURCE LINE # 21
0038 900000      E     MOV     DPTR,#OsdTimer+01H
003B E0                MOVX    A,@DPTR
003C 24FF              ADD     A,#0FFH
003E F0                MOVX    @DPTR,A
003F 900000      E     MOV     DPTR,#OsdTimer
0042 E0                MOVX    A,@DPTR
0043 34FF              ADDC    A,#0FFH
0045 F0                MOVX    @DPTR,A
0046         ?C0003:
                                           ; SOURCE LINE # 23
0046 900000      E     MOV     DPTR,#IIC_Timer
0049 E0                MOVX    A,@DPTR
004A 6002              JZ      ?C0005
                                           ; SOURCE LINE # 24
C51 COMPILER V6.10  ISR                                                                    12/02/2004 10:58:52 PAGE 19  

004C 14                DEC     A
004D F0                MOVX    @DPTR,A
                                           ; SOURCE LINE # 29
004E         ?C0005:
004E D0D0              POP     PSW
0050 D082              POP     DPL
0052 D083              POP     DPH
0054 D0E0              POP     ACC
0056 32                RETI    
             ; FUNCTION Timer0 (END)

             ; FUNCTION MTV_INT1 (BEGIN)
0000 C0E0              PUSH    ACC
0002 C0F0              PUSH    B
0004 C083              PUSH    DPH
0006 C082              PUSH    DPL
0008 C0D0              PUSH    PSW
000A 75D000            MOV     PSW,#00H
000D C000              PUSH    AR0
000F C001              PUSH    AR1
0011 C002              PUSH    AR2
0013 C003              PUSH    AR3
0015 C005              PUSH    AR5
0017 C007              PUSH    AR7
                                           ; SOURCE LINE # 33
                                           ; SOURCE LINE # 37
0019 C2AF              CLR     EA
                                           ; SOURCE LINE # 39
001B 900000      E     MOV     DPTR,#byMTV_IIC_INTFLG
001E E0                MOVX    A,@DPTR
;---- Variable 'temp' assigned to Register 'R5' ----
001F FD                MOV     R5,A
                                           ; SOURCE LINE # 43
0020 20E603            JB      ACC.6,$ + 6H
0023 020000      R     LJMP    ?C0006
                                           ; SOURCE LINE # 44
                                           ; SOURCE LINE # 45
0026 900000      E     MOV     DPTR,#byMTV_IIC_STUS1
0029 E0                MOVX    A,@DPTR
002A 30E743            JNB     ACC.7,?C0007
                                           ; SOURCE LINE # 46
                                           ; SOURCE LINE # 47
002D 900000      E     MOV     DPTR,#byMTV_IIC_TXRCBBUF
0030 E0                MOVX    A,@DPTR
0031 FD                MOV     R5,A
                                           ; SOURCE LINE # 50
0032 B47717            CJNE    A,#077H,?C0008
                                           ; SOURCE LINE # 51
                                           ; SOURCE LINE # 52
0035 75A800            MOV     IE,#00H
                                           ; SOURCE LINE # 53
0038 900000      E     MOV     DPTR,#byMTV_WDT
003B E4                CLR     A
003C F0                MOVX    @DPTR,A
                                           ; SOURCE LINE # 54
003D 900000      E     MOV     DPTR,#byMTV_ISPSLV
0040 747C              MOV     A,#07CH
0042 F0                MOVX    @DPTR,A
                                           ; SOURCE LINE # 55
0043 900000      E     MOV     DPTR,#byMTV_ISPEN
0046 7493              MOV     A,#093H
0048 F0                MOVX    @DPTR,A
C51 COMPILER V6.10  ISR                                                                    12/02/2004 10:58:52 PAGE 20  

                                           ; SOURCE LINE # 56
0049 758701            MOV     PCON,#01H
                                           ; SOURCE LINE # 58
004C         ?C0008:
                                           ; SOURCE LINE # 60
004C C200        R     CLR     bWAddr_Flag
                                           ; SOURCE LINE # 61
004E ED                MOV     A,R5
004F 700F              JNZ     ?C0009
                                           ; SOURCE LINE # 62
0051 FB                MOV     R3,A
0052 A905              MOV     R1,AR5
0054 900000      R     MOV     DPTR,#SlaveB_Addr
0057 F0                MOVX    @DPTR,A
0058 A3                INC     DPTR
0059 CB                XCH     A,R3
005A F0                MOVX    @DPTR,A
005B A3                INC     DPTR
005C E9                MOV     A,R1
005D F0                MOVX    @DPTR,A
005E 8074              SJMP    ?C0014
0060         ?C0009:
                                           ; SOURCE LINE # 64
0060 ED                MOV     A,R5
0061 FA                MOV     R2,A
0062 900000      R     MOV     DPTR,#SlaveB_Addr
0065 7401              MOV     A,#01H
0067 F0                MOVX    @DPTR,A
0068 A3                INC     DPTR
0069 EA                MOV     A,R2
006A F0                MOVX    @DPTR,A
006B A3                INC     DPTR
006C E4                CLR     A
006D F0                MOVX    @DPTR,A
                                           ; SOURCE LINE # 65
006E 8064              SJMP    ?C0014
0070         ?C0007:
                                           ; SOURCE LINE # 67
                                           ; SOURCE LINE # 68
0070 900000      E     MOV     DPTR,#byMTV_IIC_TXRCBBUF
0073 E0                MOVX    A,@DPTR
0074 FF                MOV     R7,A
0075 FD                MOV     R5,A
                                           ; SOURCE LINE # 70
0076 200020      R     JB      bWAddr_Flag,?C0012
                                           ; SOURCE LINE # 71
                                           ; SOURCE LINE # 72
0079 FB                MOV     R3,A
007A 900000      R     MOV     DPTR,#SlaveB_Addr+01H
007D E4                CLR     A
007E 8BF0              MOV     B,R3
0080 120000      E     LCALL   ?C?IILDX
                                           ; SOURCE LINE # 73
0083 D200        R     SETB    bWAddr_Flag
                                           ; SOURCE LINE # 74
0085 900000      R     MOV     DPTR,#SlaveB_Addr
0088 E0                MOVX    A,@DPTR
0089 FB                MOV     R3,A
008A A3                INC     DPTR
008B E0                MOVX    A,@DPTR
008C FA                MOV     R2,A
008D A3                INC     DPTR
C51 COMPILER V6.10  ISR                                                                    12/02/2004 10:58:52 PAGE 21  

008E E0                MOVX    A,@DPTR
008F F9                MOV     R1,A
0090 120000      E     LCALL   ?C?CLDPTR
0093 900000      E     MOV     DPTR,#byMTV_IIC_TXRCBBUF
0096 F0                MOVX    @DPTR,A
                                           ; SOURCE LINE # 75
0097 803B              SJMP    ?C0014
0099         ?C0012:
                                           ; SOURCE LINE # 77
                                           ; SOURCE LINE # 78
0099 900000      R     MOV     DPTR,#SlaveB_Addr
009C E0                MOVX    A,@DPTR
009D FB                MOV     R3,A
009E A3                INC     DPTR
009F E0                MOVX    A,@DPTR
00A0 FA                MOV     R2,A
00A1 A3                INC     DPTR
00A2 E0                MOVX    A,@DPTR
00A3 F9                MOV     R1,A
00A4 EF                MOV     A,R7
00A5 120000      E     LCALL   ?C?CSTPTR
                                           ; SOURCE LINE # 79
00A8 900000      R     MOV     DPTR,#SlaveB_Addr+01H
00AB E4                CLR     A
00AC 75F001            MOV     B,#01H
00AF 120000      E     LCALL   ?C?IILDX
                                           ; SOURCE LINE # 80
                                           ; SOURCE LINE # 81
                                           ; SOURCE LINE # 82
00B2 8020              SJMP    ?C0014
00B4         ?C0006:
                                           ; SOURCE LINE # 83
00B4 ED                MOV     A,R5
00B5 30E71C            JNB     ACC.7,?C0014
                                           ; SOURCE LINE # 84
                                           ; SOURCE LINE # 85
00B8 900000      R     MOV     DPTR,#SlaveB_Addr+01H
00BB E4                CLR     A
00BC 75F001            MOV     B,#01H

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?