⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 send.lst

📁 这是一个红外发射的驱动程序,包括C文件和H文件,只接加到工程中使用,已经调试通过.
💻 LST
字号:
C51 COMPILER V7.50   SEND                                                                  01/10/2008 11:32:25 PAGE 1   


C51 COMPILER V7.50, COMPILATION OF MODULE SEND
OBJECT MODULE PLACED IN send.OBJ
COMPILER INVOKED BY: D:\Keil\C51\BIN\C51.EXE send.c BROWSE DEBUG OBJECTEXTEND CODE

line level    source

   1          #include"send.h"
   2          
   3          unsigned int i,j,m,n,k,s;
   4          unsigned char keyvol;               //键值存放
   5          
   6          send_delay1ms(unsigned int t)
   7          {
   8   1      for(i=0;i<t;i++)
   9   1         for(j=0;j<120;j++)
  10   1         ;
  11   1      }
  12          
  13          send_clearmen()
  14          {
  15   1      remoteout=0;           
  16   1      IE=0x00;
  17   1      IP=0x01;
  18   1      TMOD=0x22;          
  19   1      TH1=0xf3;              
  20   1      TL1=0xf3;
  21   1      EA=1;                 
  22   1      }
  23          
  24          sed()
  25          {
  26   1      ET1=1;TR1=1;send_delay1ms(3);ET1=0;TR1=0;remoteout=0;
  27   1      for(m=keyvol;m>0;m--)
  28   1        {
  29   2         send_delay1ms(1);                                    
  30   2         ET1=1;TR1=1;send_delay1ms(1);ET1=0;TR1=0;remoteout=0;
  31   2        }
  32   1      send_delay1ms(10);
  33   1      }
  34          
  35          tx()
  36          {
  37   1      switch(keyvol)
  38   1       {
  39   2        case 0:keyvol=keyvol+1;sed();break;
  40   2        case 1:keyvol=keyvol+1;sed();break;
  41   2        case 2:keyvol=keyvol+1;sed();break;
  42   2        case 3:keyvol=keyvol+1;sed();break;
  43   2        default:break;
  44   2       }
  45   1      }
  46          
  47          keywork()
  48          {
  49   1      if(Key1==0)
  50   1        {LED=ON;
  51   2         send_delay1ms(10);
  52   2         while(Key1==0);
  53   2         LED=OFF;
  54   2         keyvol=0;
  55   2         tx();
C51 COMPILER V7.50   SEND                                                                  01/10/2008 11:32:25 PAGE 2   

  56   2         }
  57   1      if(Key2==0)
  58   1        {LED=ON;
  59   2         send_delay1ms(10);
  60   2         while(Key2==0);
  61   2         LED=OFF;
  62   2         keyvol=1;
  63   2         tx();
  64   2         }
  65   1      if(Key3==0)
  66   1        {LED=ON;
  67   2         send_delay1ms(10);
  68   2         while(Key3==0);
  69   2         LED=OFF;
  70   2         keyvol=2;
  71   2         tx();
  72   2         }
  73   1      if(Key4==0)
  74   1        {LED=ON;
  75   2         send_delay1ms(10);
  76   2         while(Key4==0);
  77   2         LED=OFF;
  78   2         keyvol=3;
  79   2         tx();
  80   2         }
  81   1      remoteout=1;
  82   1      }
  83          
  84          main()
  85          {
  86   1      remoteout=1;
  87   1      send_clearmen();         
  88   1      while(1)
  89   1       {
  90   2        keywork();   
  91   2        }
  92   1      }
  93          void time_intt1(void) interrupt 3 
  94          {
  95   1       remoteout=~remoteout;
  96   1      }
  97          //
  98          //
  99          //*********************结束**************************//
C51 COMPILER V7.50   SEND                                                                  01/10/2008 11:32:25 PAGE 3   

ASSEMBLY LISTING OF GENERATED OBJECT CODE


             ; FUNCTION L?0043 (BEGIN)
0000         L?0044:
0000 C2B0              CLR     LED
0002 7F0A              MOV     R7,#0AH
0004 7E00              MOV     R6,#00H
             ; FUNCTION _send_delay1ms (BEGIN)
                                           ; SOURCE LINE # 6
;---- Variable 't' assigned to Register 'R6/R7' ----
                                           ; SOURCE LINE # 7
                                           ; SOURCE LINE # 8
0006 E4                CLR     A
0007 F500        R     MOV     i,A
0009 F500        R     MOV     i+01H,A
000B         ?C0001:
000B C3                CLR     C
000C E500        R     MOV     A,i+01H
000E 9F                SUBB    A,R7
000F E500        R     MOV     A,i
0011 9E                SUBB    A,R6
0012 501D              JNC     ?C0007
                                           ; SOURCE LINE # 9
0014 E4                CLR     A
0015 F500        R     MOV     j,A
0017 F500        R     MOV     j+01H,A
0019         ?C0004:
0019 0500        R     INC     j+01H
001B E500        R     MOV     A,j+01H
001D 7002              JNZ     ?C0037
001F 0500        R     INC     j
0021         ?C0037:
0021 6478              XRL     A,#078H
0023 4500        R     ORL     A,j
0025 70F2              JNZ     ?C0004
0027         ?C0003:
0027 0500        R     INC     i+01H
0029 E500        R     MOV     A,i+01H
002B 70DE              JNZ     ?C0001
002D 0500        R     INC     i
002F         ?C0038:
002F 80DA              SJMP    ?C0001
                                           ; SOURCE LINE # 11
0031         ?C0007:
0031 22                RET     
             ; FUNCTION _send_delay1ms (END)

             ; FUNCTION send_clearmen (BEGIN)
                                           ; SOURCE LINE # 13
                                           ; SOURCE LINE # 14
                                           ; SOURCE LINE # 15
0000 C2B5              CLR     remoteout
                                           ; SOURCE LINE # 16
0002 E4                CLR     A
0003 F5A8              MOV     IE,A
                                           ; SOURCE LINE # 17
0005 75B801            MOV     IP,#01H
                                           ; SOURCE LINE # 18
0008 758922            MOV     TMOD,#022H
                                           ; SOURCE LINE # 19
000B 758DF3            MOV     TH1,#0F3H
C51 COMPILER V7.50   SEND                                                                  01/10/2008 11:32:25 PAGE 4   

                                           ; SOURCE LINE # 20
000E 758BF3            MOV     TL1,#0F3H
                                           ; SOURCE LINE # 21
0011 D2AF              SETB    EA
                                           ; SOURCE LINE # 22
0013 22                RET     
             ; FUNCTION send_clearmen (END)

             ; FUNCTION sed (BEGIN)
                                           ; SOURCE LINE # 24
                                           ; SOURCE LINE # 25
                                           ; SOURCE LINE # 26
0000 D2AB              SETB    ET1
0002 D28E              SETB    TR1
0004 7F03              MOV     R7,#03H
0006 7E00              MOV     R6,#00H
0008 120000      R     LCALL   _send_delay1ms
000B C2AB              CLR     ET1
000D C28E              CLR     TR1
000F C2B5              CLR     remoteout
                                           ; SOURCE LINE # 27
0011 8E00        R     MOV     m,R6
0013 850000      R     MOV     m+01H,keyvol
0016         ?C0009:
0016 D3                SETB    C
0017 E500        R     MOV     A,m+01H
0019 9400              SUBB    A,#00H
001B E500        R     MOV     A,m
001D 9400              SUBB    A,#00H
001F 401E              JC      ?C0010
                                           ; SOURCE LINE # 28
                                           ; SOURCE LINE # 29
0021 7F01              MOV     R7,#01H
0023 7E00              MOV     R6,#00H
0025 120000      R     LCALL   _send_delay1ms
                                           ; SOURCE LINE # 30
0028 D2AB              SETB    ET1
002A D28E              SETB    TR1
002C 120000      R     LCALL   _send_delay1ms
002F C2AB              CLR     ET1
0031 C28E              CLR     TR1
0033 C2B5              CLR     remoteout
                                           ; SOURCE LINE # 31
0035 E500        R     MOV     A,m+01H
0037 1500        R     DEC     m+01H
0039 70DB              JNZ     ?C0009
003B 1500        R     DEC     m
003D         ?C0039:
003D 80D7              SJMP    ?C0009
003F         ?C0010:
                                           ; SOURCE LINE # 32
003F 7F0A              MOV     R7,#0AH
0041 7E00              MOV     R6,#00H
0043 020000      R     LJMP    _send_delay1ms
             ; FUNCTION sed (END)

             ; FUNCTION tx (BEGIN)
                                           ; SOURCE LINE # 35
                                           ; SOURCE LINE # 36
                                           ; SOURCE LINE # 37
0000 E500        R     MOV     A,keyvol
0002 14                DEC     A
C51 COMPILER V7.50   SEND                                                                  01/10/2008 11:32:25 PAGE 5   

0003 600C              JZ      ?C0016
0005 14                DEC     A
0006 6009              JZ      ?C0016
0008 14                DEC     A
0009 6006              JZ      ?C0016
000B 2403              ADD     A,#03H
000D 7007              JNZ     ?C0019
                                           ; SOURCE LINE # 38
                                           ; SOURCE LINE # 39
000F         ?C0014:
000F 8000              SJMP    ?C0042
                                           ; SOURCE LINE # 40
                                           ; SOURCE LINE # 41
0011         ?C0016:
0011         ?C0041:
                                           ; SOURCE LINE # 42
0011         ?C0042:
0011 0500        R     INC     keyvol
0013 120000      R     LCALL   sed
                                           ; SOURCE LINE # 43
                                           ; SOURCE LINE # 44
                                           ; SOURCE LINE # 45
0016         ?C0019:
0016 22                RET     
             ; FUNCTION tx (END)

             ; FUNCTION keywork (BEGIN)
                                           ; SOURCE LINE # 47
                                           ; SOURCE LINE # 48
                                           ; SOURCE LINE # 49
0000 20930E            JB      Key1,?C0020
                                           ; SOURCE LINE # 50
                                           ; SOURCE LINE # 51
0003 120000      R     LCALL   L?0043
0006         ?C0021:
                                           ; SOURCE LINE # 52
0006 3093FD            JNB     Key1,?C0021
0009         ?C0022:
                                           ; SOURCE LINE # 53
0009 D2B0              SETB    LED
                                           ; SOURCE LINE # 54
000B E4                CLR     A
000C F500        R     MOV     keyvol,A
                                           ; SOURCE LINE # 55
000E 120000      R     LCALL   tx
                                           ; SOURCE LINE # 56
0011         ?C0020:
                                           ; SOURCE LINE # 57
0011 20940E            JB      Key2,?C0023
                                           ; SOURCE LINE # 58
                                           ; SOURCE LINE # 59
0014 120000      R     LCALL   L?0043
0017         ?C0024:
                                           ; SOURCE LINE # 60
0017 3094FD            JNB     Key2,?C0024
001A         ?C0025:
                                           ; SOURCE LINE # 61
001A D2B0              SETB    LED
                                           ; SOURCE LINE # 62
001C 750001      R     MOV     keyvol,#01H
                                           ; SOURCE LINE # 63
001F 120000      R     LCALL   tx
C51 COMPILER V7.50   SEND                                                                  01/10/2008 11:32:25 PAGE 6   

                                           ; SOURCE LINE # 64
0022         ?C0023:
                                           ; SOURCE LINE # 65
0022 20950E            JB      Key3,?C0026
                                           ; SOURCE LINE # 66
                                           ; SOURCE LINE # 67
0025 120000      R     LCALL   L?0044
0028         ?C0027:
                                           ; SOURCE LINE # 68
0028 3095FD            JNB     Key3,?C0027
002B         ?C0028:
                                           ; SOURCE LINE # 69
002B D2B0              SETB    LED
                                           ; SOURCE LINE # 70
002D 750002      R     MOV     keyvol,#02H
                                           ; SOURCE LINE # 71
0030 120000      R     LCALL   tx
                                           ; SOURCE LINE # 72
0033         ?C0026:
                                           ; SOURCE LINE # 73
0033 20960E            JB      Key4,?C0029
                                           ; SOURCE LINE # 74
                                           ; SOURCE LINE # 75
0036 120000      R     LCALL   L?0044
0039         ?C0030:
                                           ; SOURCE LINE # 76
0039 3096FD            JNB     Key4,?C0030
003C         ?C0031:
                                           ; SOURCE LINE # 77
003C D2B0              SETB    LED
                                           ; SOURCE LINE # 78
003E 750003      R     MOV     keyvol,#03H
                                           ; SOURCE LINE # 79
0041 120000      R     LCALL   tx
                                           ; SOURCE LINE # 80
0044         ?C0029:
                                           ; SOURCE LINE # 81
0044 D2B5              SETB    remoteout
                                           ; SOURCE LINE # 82
0046 22                RET     
             ; FUNCTION keywork (END)

             ; FUNCTION main (BEGIN)
                                           ; SOURCE LINE # 84
                                           ; SOURCE LINE # 85
                                           ; SOURCE LINE # 86
0000 D2B5              SETB    remoteout
                                           ; SOURCE LINE # 87
0002 120000      R     LCALL   send_clearmen
0005         ?C0033:
                                           ; SOURCE LINE # 88
                                           ; SOURCE LINE # 89
                                           ; SOURCE LINE # 90
0005 120000      R     LCALL   keywork
                                           ; SOURCE LINE # 91
0008 80FB              SJMP    ?C0033
             ; FUNCTION main (END)

             ; FUNCTION time_intt1 (BEGIN)
                                           ; SOURCE LINE # 93
                                           ; SOURCE LINE # 95
0000 B2B5              CPL     remoteout
C51 COMPILER V7.50   SEND                                                                  01/10/2008 11:32:25 PAGE 7   

                                           ; SOURCE LINE # 96
0002 32                RETI    
             ; FUNCTION time_intt1 (END)



MODULE INFORMATION:   STATIC OVERLAYABLE
   CODE SIZE        =    247    ----
   CONSTANT SIZE    =   ----    ----
   XDATA SIZE       =   ----    ----
   PDATA SIZE       =   ----    ----
   DATA SIZE        =     13    ----
   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 + -