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

📄 remotest.lst

📁 遥控器生产自动测试架程序,有电路图,显示按键控制,全自动测试
💻 LST
📖 第 1 页 / 共 5 页
字号:
A51 MACRO ASSEMBLER  REMOTEST                                                             08/05/2008 20:09:46 PAGE     1


MACRO ASSEMBLER A51 V7.08a
OBJECT MODULE PLACED IN remotest.OBJ
ASSEMBLER INVOKED BY: C:\Keil\C51\BIN\A51.EXE remotest.asm SET(SMALL) DEBUG EP

LOC  OBJ            LINE     SOURCE

                       1     ;*****************************************************************************************
                       2     ;名称:遥控器成品自动测试架
                       3     ;文件:remoter_auto_test
                       4     ;作者:张绍斌 shaobinz@163.com
                       5     ;日期:2008/05/28
                       6     ;版本:Ver1.0
                       7     
                       8     
                       9     ;*****************************************************************************************
                      10     
  0090                11     TEST_ON          BIT        P1.0
  0091                12     BELL             BIT        P1.1
  0092                13     CD_4INH          BIT        P1.2
  0093                14     CD_4A            BIT        P1.3
  0094                15     CD_4B            BIT        P1.4
  0095                16     CD_4C            BIT        P1.5
  0096                17     CD_4D            BIT        P1.6
                      18     
  0097                19     CD_3INH          BIT        P1.7
  00B0                20     CD_3A            BIT        P3.0
  00B1                21     CD_3B            BIT        P3.1
  00B3                22     CD_3C            BIT        P3.3
  00B4                23     CD_3D            BIT        P3.4
                      24     
  00B5                25     CD_2INH          BIT        P3.5
  00B6                26     CD_2A            BIT        P3.6
  00B7                27     CD_2B            BIT        P3.7
  00A0                28     CD_2C            BIT        P2.0
  00A1                29     CD_2D            BIT        P2.1
                      30     
  00A2                31     CD_1INH          BIT        P2.2
  00A3                32     CD_1A            BIT        P2.3
  00A4                33     CD_1B            BIT        P2.4
  00A5                34     CD_1C            BIT        P2.5
  00A6                35     CD_1D            BIT        P2.6
                      36     
  0087                37     FIRST            BIT        P0.7
  00A7                38     SECOND           BIT        P2.7
                      39     
                      40     
                      41     
  F830                42     TMRVAR          EQU         63536       ;2MS
  0030                43     DISPBUF1         EQU        30H
  0031                44     DISPBUF2         EQU        31H
                      45     
  0032                46     CH_NUMBER         EQU       32H
  0033                47     SELECT_TIME       EQU       33H
  0034                48     FLASH_TIME        EQU        34H
  0035                49     OFF_TIME          EQU        35H
  0036                50     COUNTER           EQU        36H
                      51     
  00B1                52     mS20H     EQU   0B1H ;定时器0初值
  00E0                53     mS20L     EQU   0E0H ;12M 20MS;45536=B1E0H   65536-45536=20000US=20MS
                      54     
                      55     
                      56     
                      57     
  0020                58     ALL_FLAG         DATA         20H
A51 MACRO ASSEMBLER  REMOTEST                                                             08/05/2008 20:09:46 PAGE     2

  0000                59     START_FLAG         BIT        ALL_FLAG.0H
  0001                60     FLASH_FLAG         BIT        ALL_FLAG.1H
  0002                61     GO_OF_FLAG         BIT        ALL_FLAG.2H
                      62     
  0000                63     DA_CHAR_O          EQU       00   ;"O"
  0011                64     DA_CHAR_G          EQU       17   ;"G"
  000F                65     DA_CHAR_F         EQU        15   ;"F"
  000D                66     DA_CHAR_T          EQU       13   ;"D" 
  0010                67     DA_CHAR_NULL      EQU        16   ; 
                      68     
  0060                69     STACK                   EQU     60H
                      70     
                      71           
                      72     ;/////////////////////////////////////////////////////////////////////////////////////////
0000                  73     ORG         00H
0000 801B             74     JMP     START   ;主程序入口
                      75     
0003                  76     ORG     03H
0003 32               77     RETI            ;外中断0入口
                      78     
000B                  79     ORG     0BH
000B A1C2             80     JMP     TIME0   ;定时器0
                      81     
0013                  82     ORG     13H
0013 32               83     RETI            ;外中断1入口
                      84     
001B                  85     ORG     1BH
001B A1E3             86     JMP     TIME1   ;定时器1 
                      87     
001D                  88     START:
                      89                
001D 78FF             90                MOV         R0 ,#0FFH
001F E4               91                CLR         A
                      92     
0020                  93     START1:  
0020 F6               94                MOV     @R0 ,A
0021 D8FD             95                DJNZ     R0,     START1  ;CLEAR ALL RAM
                      96                
                      97                
                      98     
0023 758160           99             MOV       SP,  #STACK
0026 75A80A          100                       MOV   IE,#00001010B        ;EA,X,ET2,ES,ET1,EX1,ET0,EX0          
0029 758911          101               MOV   TMOD,#11H            ;TWO 16BIT TIMER 
002C 75B809          102               MOV   IP,#00001001B        ;X,X,PT2,PS,PT1,PX1,PT0,PX0 
                     103     
002F 7580FF          104               MOV  P0,#0FFH
0032 758DF8          105              MOV     Th1,#HIGH(TMRVAR)
0035 758B30          106              MOV     TL1,#LOW(TMRVAR) 
                     107                            
0038 758CB1          108                 MOV  TH0,#MS20H
003B 758AB1          109                 MOV  TL0,#MS20H
                     110                 
003E 7580FF          111                 mov p0,#0ffh
0041 7590FF          112                 mov p1,#0ffh
0044 75A0FF          113                 mov p2,#0ffh
0047 75B0FF          114                 mov p3,#0ffh
                     115                 
                     116                 
004A D2A2            117                          SETB    CD_1INH               ;全部关掉
004C D2B5            118              SETB    CD_2INH
004E D297            119              SETB    CD_3INH
0050 D292            120              SETB    CD_4INH
                     121                 
                     122               ;  MOV    DISPBUF1, #DA_CHAR_O
                     123               ;  MOV    DISPBUF2, #DA_CHAR_G       
                     124                   
A51 MACRO ASSEMBLER  REMOTEST                                                             08/05/2008 20:09:46 PAGE     3

0052 D28E            125                 SETB   TR1
0054 D28C            126                 SETB    TR0
0056 D2AF            127                 SETB   EA
                     128                 
0058 118F            129                 CALL  BEEP
005A 118F            130                 CALL  BEEP
                     131                  
                     132     
005C                 133     LOOP: 
005C 200027          134              JB    START_FLAG,LOOP1        
005F 200209          135              JB     GO_OF_FLAG, LOOP_A
                     136              
0062 753000          137                       MOV    DISPBUF1, #DA_CHAR_O
0065 753111          138                       MOV    DISPBUF2, #DA_CHAR_G       ;"GO" 
0068 02007C          139                       LJMP  LOOP0
006B                 140     LOOP_A:       
006B 75300F          141                MOV    DISPBUF1, #DA_CHAR_F
006E 753100          142                MOV    DISPBUF2, #DA_CHAR_O      ;"of" 
0071 753532          143                 MOV   OFF_TIME, #50
                     144                          
0074                 145     LOOP_B:
0074 E535            146                      MOV  A, OFF_TIME
0076 70FC            147                      JNZ   LOOP_B
0078 C202            148                      CLR   GO_OF_FLAG
007A 80E0            149                      JMP        LOOP
                     150     
                     151         
                     152                      
007C                 153     LOOP0:
                     154     
007C 2090DD          155              JB   TEST_ON,   LOOP           ;测试
007F 11D1            156              CALL  DELAY_10MS                
0081 2090D8          157              JB   TEST_ON,   LOOP           ;去抖
0084 D200            158              SETB  START_FLAG   
                     159     
0086                 160     LOOP1:
                     161     
0086 119C            162              CALL    DISPLAY_NUMBER
0088 11DC            163              CALL   SELECT_CH        ;CH_NUM出口数据
008A 11F7            164              CALL   CH_WORK
                     165     
                     166     
008C 02005C          167              LJMP    LOOP
                     168     
                     169                                       
                     170              
                     171     ;//////////////////////////////////////////////////////////////////////////////////////////
008F                 172     BEEP:
008F D291            173              setb bell
0091 7EC8            174              MOV  R6,#200
0093 7F7D            175       DEX1:  MOV  R7,#125
0095                 176       DEX2:   
0095 DFFE            177              DJNZ  R7,DEX2    
0097 DEFA            178              DJNZ  R6,dex1
0099 C291            179              clr bell 
009B 22              180              RET
                     181     ;//////////////////////////////////////////////////////////////////////////////////////////
009C                 182     DISPLAY_NUMBER:
                     183       
009C E532            184                MOV    A,CH_NUMBER     ;十六进转十进制子程序
009E 75F064          185                MOV    B,#100
00A1 84              186                DIV    AB
00A2 E5F0            187                mov    a,b
00A4 75F00A          188                mov    b,#10
00A7 84              189                div    ab
00A8 F531            190                MOV    dispbuf2,A     ;把十位数值存入高位显示缓冲区
A51 MACRO ASSEMBLER  REMOTEST                                                             08/05/2008 20:09:46 PAGE     4

00AA 85F030          191                MOV    dispbuf1,B     ;把个位数值存入低位显示缓冲区
00AD 22              192                RET  
                     193     
                     194     ;------------------------------------------------------------------------------------------
                             ---------
                     195     ;不需要很精确的一些延时子程序,12M
00AE                 196     DELAY_5SEC:;                                  ;5S延时
00AE 7C32            197                             MOV     R4,#50
00B0 800E            198                             SJMP    DELAY100MS
00B2                 199     DELAY_2SEC:;                                  ;2S延时
00B2 7C14            200                             MOV     R4,#20
00B4 800A            201                             SJMP    DELAY100MS
00B6                 202     DELAY_1SEC:                                   ;1S延时     
00B6 7C0A            203                             MOV     R4,#10
00B8 8006            204                             SJMP    DELAY100MS
00BA                 205     DELAY_500MS:                                  ;500MS延时
00BA 7C05            206                             MOV     R4,#05
00BC 8002            207                             SJMP    DELAY100MS
00BE                 208     DELAY_200MS:                                  ;200MS延时
00BE 7C02            209                             MOV     R4,#02
00C0                 210     DELAY100MS:
00C0 11C5            211                             CALL    DELAY_100MS
00C2 DCFC            212                             DJNZ    R4,DELAY100MS
00C4 22              213                             RET
                     214     
00C5                 215     DELAY_100MS:
00C5 7A64            216                             MOV     R2,#100         ;100MS延时
00C7 800A            217                             SJMP    DELAY_1MS
00C9                 218     DELAY_50MS:

⌨️ 快捷键说明

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