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

📄 shownum.lst

📁 本人设计的电磁脉冲油泵的控制程序
💻 LST
📖 第 1 页 / 共 2 页
字号:
  47      =1  extern void *memcpy (void *s1, void *s2, int n);
  48      =1  extern void *memchr (void *s, char val, int n);
  49      =1  extern void *memccpy (void *s1, void *s2, char val, int n);
  50      =1  extern void *memmove (void *s1, void *s2, int n);
  51      =1  extern void *memset  (void *s, char val, int n);
  52      =1  #pragma RESTORE
  53      =1  
  54      =1  #endif
   5          #include<IOsetup.h>
   1      =1  #ifndef __IOSETUP_H__
   2      =1  #define __IOSETUP_H__
C51 COMPILER V7.06   SHOWNUM                                                               11/18/2005 22:41:13 PAGE 5   

   3      =1  
   4      =1   
   5      =1  #define uint unsigned int
   6      =1  #define uchar unsigned char
   7      =1  
   8      =1  
   9      =1  
  10      =1  sbit SW=P3^2;                   //频率档位切换+按键(1~15HZ)
  11      =1  sbit fchange=P3^3;              //频率档位切换-按键(1~15HZ)
  12      =1  sbit fset=P3^4;                 //启动运行次数按键              
  13      =1  sbit setnum=P3^5;               //运行次数设定按键              
  14      =1  sbit fuel=P3^7;                 //油泵输出
  15      =1  sbit enable0=P3^0;              //显示第一位
  16      =1  sbit enable1=P3^1;      //显示第二位 
  17      =1  
  18      =1  
  19      =1  #endif
   6          
   7          
   8          extern void delay(unsigned int t);
   9          
  10          unsigned char DigDsp[2]={0,0};
  11          
  12          
  13          void DISPLAY(unsigned char x)
  14          {
  15   1      switch(x)
  16   1            {
  17   2            case 0:
  18   2                       P1=0x81;break;
  19   2            case 1:
  20   2                       P1=0xf3;break;
  21   2            case 2:
  22   2                       P1=0x49;break;
  23   2            case 3:
  24   2                       P1=0x61;break;
  25   2            case 4:
  26   2                       P1=0x33;break;
  27   2            case 5:
  28   2                       P1=0x25;break;
  29   2            case 6:
  30   2                       P1=0x05;break;
  31   2            case 7:
  32   2                       P1=0xf1;break;
  33   2            case 8:
  34   2                   P1=0x01;break;
  35   2            case 9:
  36   2                       P1=0x21;break;
  37   2            default :
  38   2                       P1=0xff;break;
  39   2            }
  40   1      }
  41          
  42          void ShowNum(unsigned char number)     
  43          {
  44   1      DigDsp[1]=number/10;
  45   1      while (number>=10){ number-=10;}
  46   1      DigDsp[0]=number;
  47   1      enable0=1;
  48   1      enable1=1;
  49   1      if(DigDsp[1]>0){enable0=0;enable1=1;DISPLAY(DigDsp[1]);delay(300);}
  50   1      enable0=1;
C51 COMPILER V7.06   SHOWNUM                                                               11/18/2005 22:41:13 PAGE 6   

  51   1      enable1=0;
  52   1      DISPLAY(DigDsp[0]);
  53   1      delay(300);
  54   1      }
  55          
C51 COMPILER V7.06   SHOWNUM                                                               11/18/2005 22:41:13 PAGE 7   

ASSEMBLY LISTING OF GENERATED OBJECT CODE


             ; FUNCTION _DISPLAY (BEGIN)
                                           ; SOURCE LINE # 13
;---- Variable 'x' assigned to Register 'R7' ----
                                           ; SOURCE LINE # 14
                                           ; SOURCE LINE # 15
0000 EF                MOV     A,R7
0001 B40A00            CJNE    A,#0AH,?C0018
0004         ?C0018:
0004 504D              JNC     ?C0012
0006 900000      R     MOV     DPTR,#?C0019
0009 F8                MOV     R0,A
000A 28                ADD     A,R0
000B 28                ADD     A,R0
000C 73                JMP     @A+DPTR
000D         ?C0019:
000D 020000      R     LJMP    ?C0002
0010 020000      R     LJMP    ?C0003
0013 020000      R     LJMP    ?C0004
0016 020000      R     LJMP    ?C0005
0019 020000      R     LJMP    ?C0006
001C 020000      R     LJMP    ?C0007
001F 020000      R     LJMP    ?C0008
0022 020000      R     LJMP    ?C0009
0025 020000      R     LJMP    ?C0010
0028 020000      R     LJMP    ?C0011
                                           ; SOURCE LINE # 16
                                           ; SOURCE LINE # 17
002B         ?C0002:
                                           ; SOURCE LINE # 18
002B 759081            MOV     P1,#081H
002E 22                RET     
                                           ; SOURCE LINE # 19
002F         ?C0003:
                                           ; SOURCE LINE # 20
002F 7590F3            MOV     P1,#0F3H
0032 22                RET     
                                           ; SOURCE LINE # 21
0033         ?C0004:
                                           ; SOURCE LINE # 22
0033 759049            MOV     P1,#049H
0036 22                RET     
                                           ; SOURCE LINE # 23
0037         ?C0005:
                                           ; SOURCE LINE # 24
0037 759061            MOV     P1,#061H
003A 22                RET     
                                           ; SOURCE LINE # 25
003B         ?C0006:
                                           ; SOURCE LINE # 26
003B 759033            MOV     P1,#033H
003E 22                RET     
                                           ; SOURCE LINE # 27
003F         ?C0007:
                                           ; SOURCE LINE # 28
003F 759025            MOV     P1,#025H
0042 22                RET     
                                           ; SOURCE LINE # 29
0043         ?C0008:
                                           ; SOURCE LINE # 30
C51 COMPILER V7.06   SHOWNUM                                                               11/18/2005 22:41:13 PAGE 8   

0043 759005            MOV     P1,#05H
0046 22                RET     
                                           ; SOURCE LINE # 31
0047         ?C0009:
                                           ; SOURCE LINE # 32
0047 7590F1            MOV     P1,#0F1H
004A 22                RET     
                                           ; SOURCE LINE # 33
004B         ?C0010:
                                           ; SOURCE LINE # 34
004B 759001            MOV     P1,#01H
004E 22                RET     
                                           ; SOURCE LINE # 35
004F         ?C0011:
                                           ; SOURCE LINE # 36
004F 759021            MOV     P1,#021H
0052 22                RET     
                                           ; SOURCE LINE # 37
0053         ?C0012:
                                           ; SOURCE LINE # 38
0053 7590FF            MOV     P1,#0FFH
                                           ; SOURCE LINE # 39
                                           ; SOURCE LINE # 40
0056         ?C0013:
0056 22                RET     
             ; FUNCTION _DISPLAY (END)

             ; FUNCTION _ShowNum (BEGIN)
                                           ; SOURCE LINE # 42
;---- Variable 'number' assigned to Register 'R7' ----
                                           ; SOURCE LINE # 43
                                           ; SOURCE LINE # 44
0000 EF                MOV     A,R7
0001 75F00A            MOV     B,#0AH
0004 84                DIV     AB
0005 F500        R     MOV     DigDsp+01H,A
0007         ?C0014:
                                           ; SOURCE LINE # 45
0007 EF                MOV     A,R7
0008 C3                CLR     C
0009 940A              SUBB    A,#0AH
000B 4006              JC      ?C0015
000D 74F6              MOV     A,#0F6H
000F 2F                ADD     A,R7
0010 FF                MOV     R7,A
0011 80F4              SJMP    ?C0014
0013         ?C0015:
                                           ; SOURCE LINE # 46
0013 8F00        R     MOV     DigDsp,R7
                                           ; SOURCE LINE # 47
0015 D2B0              SETB    enable0
                                           ; SOURCE LINE # 48
0017 D2B1              SETB    enable1
                                           ; SOURCE LINE # 49
0019 E500        R     MOV     A,DigDsp+01H
001B D3                SETB    C
001C 9400              SUBB    A,#00H
001E 4010              JC      ?C0016
0020 C2B0              CLR     enable0
0022 D2B1              SETB    enable1
0024 AF00        R     MOV     R7,DigDsp+01H
0026 120000      R     LCALL   _DISPLAY
C51 COMPILER V7.06   SHOWNUM                                                               11/18/2005 22:41:13 PAGE 9   

0029 7F2C              MOV     R7,#02CH
002B 7E01              MOV     R6,#01H
002D 120000      E     LCALL   _delay
0030         ?C0016:
                                           ; SOURCE LINE # 50
0030 D2B0              SETB    enable0
                                           ; SOURCE LINE # 51
0032 C2B1              CLR     enable1
                                           ; SOURCE LINE # 52
0034 AF00        R     MOV     R7,DigDsp
0036 120000      R     LCALL   _DISPLAY
                                           ; SOURCE LINE # 53
0039 7F2C              MOV     R7,#02CH
003B 7E01              MOV     R6,#01H
003D 020000      E     LJMP    _delay
             ; FUNCTION _ShowNum (END)



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