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

📄 sle4442.lst

📁 sle4442源代码
💻 LST
📖 第 1 页 / 共 2 页
字号:
4186 13         +1   145             RRC     A
4187 00         +1   146             NOP
4188 00         +1   147             NOP
4189 D290       +1   148             SETB    CLK
418B 5103       +1   149             ACALL   Delay10uS                       ;
418D DBEC       +1   150             DJNZ    R3,Remm1                        ;8位完了吗?
418F F6         +1   151             MOV     @R0,a                           ;取出这个字节
4190 08         +1   152             INC     R0
4191 DAE5       +1   153             DJNZ    R2,Remm2                        ;完了吗?
4193 319E       +1   154             ACALL   Break                           ;中止
4195 D000       +1   155             POP     00H
4197 D002       +1   156             POP     02H
4199 D003       +1   157             POP     03H
419B D004       +1   158             POP     04H
419D 22         +1   159             RET
                +1   160     
                +1   161     ;***************中止子程序****************
419E            +1   162     Break:    
419E C290       +1   163             CLR     CLK
41A0 5103       +1   164             ACALL   Delay10uS
41A2 D291       +1   165             SETB    RST
41A4 5103       +1   166             ACALL   Delay10uS
41A6 C291       +1   167             CLR     RST
41A8 22         +1   168             RET
                +1   169     
                +1   170     
                +1   171     ;**************************************************************************
                +1   172     ;复位及复位应答子程序
                +1   173     ;读出卡内前4个字节,存在(@R0,@(R0+1),@(R0+2),@(R0+3))中
                +1   174     ;这4个字节是卡的信息,用来判断卡的来源以及合法性
                +1   175     ;**************************************************************************
41A9            +1   176     Anrst:
41A9 C000       +1   177             PUSH    00H
41AB C003       +1   178             PUSH    ByteCnt
41AD C002       +1   179             PUSH    BitCnt
41AF C0D0       +1   180             PUSH    PSW
41B1 7830       +1   181             MOV     R0,#ReadBuf
41B3 E4         +1   182             CLR     A
41B4 D291       +1   183             SETB    RST                     ;拉高复位线
41B6 5103       +1   184             ACALL   Delay10uS
41B8 D290       +1   185             SETB    CLK                     ;拉高时钟线
41BA 5103       +1   186             ACALL   Delay10uS
41BC C290       +1   187             CLR     CLK                     ;拉低时钟线
41BE 5103       +1   188             ACALL   Delay10uS 
41C0 C291       +1   189             CLR     RST                     ;拉低复位线
41C2 750304     +1   190             MOV     ByteCnt,#4              ;4个字节
A51 MACRO ASSEMBLER  SLE4442                                                              09/16/2003 19:50:59 PAGE     4

41C5            +1   191     Anrst1:   
41C5 750208     +1   192             MOV     BitCnt,#8               ;8个bit
41C8            +1   193     Anrst2:   
41C8 5103       +1   194             ACALL   Delay10uS 
41CA D290       +1   195             SETB    CLK
41CC D292       +1   196             SETB    SD 
41CE 00         +1   197             NOP
41CF 00         +1   198             NOP
41D0 A292       +1   199             MOV     C,SD
41D2 13         +1   200             RRC     A
41D3 5103       +1   201             ACALL   Delay10uS 
41D5 C290       +1   202             CLR     CLK
41D7 D502EE     +1   203             DJNZ    BitCnt,Anrst2           ;8 bit 读完了吗?
41DA F6         +1   204             MOV     @R0,A                   ;保存
41DB 08         +1   205             INC     R0                      ;下1字节
41DC D503E6     +1   206             DJNZ    ByteCnt,Anrst1          ;4个字节完了吗?
41DF 7830       +1   207             MOV     R0,#ReadBuf             ;准备核对卡内信息
41E1 E6         +1   208             MOV     A,@R0
41E2 B4A213     +1   209             CJNE    A,#Idetify1,CardErr     ;第1字节相同吗?
41E5 08         +1   210             INC     R0                      ;下1字节
41E6 E6         +1   211             MOV     A,@R0
41E7 B4130E     +1   212             CJNE    A,#Idetify2,CardErr     ;第2字节相同吗?     
41EA 08         +1   213             INC     R0                      ;下1字节
41EB E6         +1   214             MOV     A,@R0
41EC B41009     +1   215             CJNE    A,#Idetify3,CardErr     ;第3字节相同吗?      
41EF 08         +1   216             INC     R0                      ;下1字节
41F0 E6         +1   217             MOV     A,@R0
41F1 B49104     +1   218             CJNE    A,#Idetify4,CardErr     ;第4字节相同吗?      
41F4 7400       +1   219             MOV     A,#00H                  ;全相同,合法卡,ACC中返回#0
41F6 21FA       +1   220             AJMP    Anrstend                ;
41F8            +1   221     CardErr:  
41F8 7401       +1   222             MOV     A,#01H                  ;不同,非法卡ACC中返回#01
41FA            +1   223     Anrstend:
41FA D0D0       +1   224             POP     PSW
41FC D002       +1   225             POP     BitCnt
41FE D003       +1   226             POP     ByteCnt
4200 D000       +1   227             POP     00h
4202 22         +1   228             RET
                +1   229     ;*************延时10微秒子程序*******************
4203            +1   230     Delay10uS:
4203 C007       +1   231             PUSH    07H
4205 7F03       +1   232             MOV     R7,#03H
4207 DFFE       +1   233             DJNZ    R7,$
4209 D007       +1   234             POP     07H
420B 22         +1   235             RET
                     236     
                     237     END
A51 MACRO ASSEMBLER  SLE4442                                                              09/16/2003 19:50:59 PAGE     5

SYMBOL TABLE LISTING
------ ----- -------


N A M E             T Y P E  V A L U E   ATTRIBUTES

ACC. . . . . . . .  D ADDR   00E0H   A   
ANRST. . . . . . .  C ADDR   41A9H   A   
ANRST1 . . . . . .  C ADDR   41C5H   A   
ANRST2 . . . . . .  C ADDR   41C8H   A   
ANRSTEND . . . . .  C ADDR   41FAH   A   
BITCNT . . . . . .  D ADDR   0002H   A   
BREAK. . . . . . .  C ADDR   419EH   A   
BYTECNT. . . . . .  D ADDR   0003H   A   
CARDERR. . . . . .  C ADDR   41F8H   A   
CHECKSUM . . . . .  C ADDR   4122H   A   
CLK. . . . . . . .  B ADDR   0090H.0 A   
DEAD . . . . . . .  B ADDR   0080H.0 A   
DEADLOCK . . . . .  D ADDR   0057H   A   
DELAY10US. . . . .  C ADDR   4203H   A   
ERRCNT . . . . . .  D ADDR   0055H   A   
ICIN . . . . . . .  B ADDR   0090H.4 A   
ICN. . . . . . . .  B ADDR   0080H.7 A   
IDETIFY1 . . . . .  N NUMB   00A2H   A   
IDETIFY2 . . . . .  N NUMB   0013H   A   
IDETIFY3 . . . . .  N NUMB   0010H   A   
IDETIFY4 . . . . .  N NUMB   0091H   A   
INVALID. . . . . .  B ADDR   0080H.2 A   
LOCK . . . . . . .  B ADDR   0080H.3 A   
MAIN . . . . . . .  C ADDR   4100H   A   
P0 . . . . . . . .  D ADDR   0080H   A   
P1 . . . . . . . .  D ADDR   0090H   A   
P2 . . . . . . . .  D ADDR   00A0H   A   
PSW. . . . . . . .  D ADDR   00D0H   A   
READBUF. . . . . .  N NUMB   0030H   A   
READCARD . . . . .  C ADDR   410BH   A   
READEXIT . . . . .  C ADDR   4129H   A   
READ_INSERT_CARD .  C ADDR   4103H   A   
REMM . . . . . . .  C ADDR   416CH   A   
REMM1. . . . . . .  C ADDR   417BH   A   
REMM2. . . . . . .  C ADDR   4178H   A   
RST. . . . . . . .  B ADDR   0090H.1 A   
SD . . . . . . . .  B ADDR   0090H.2 A   
SENDBYTE1. . . . .  C ADDR   4158H   A   
SENDCOMM . . . . .  C ADDR   4130H   A   
SENDLOOP . . . . .  C ADDR   415CH   A   
SP . . . . . . . .  D ADDR   0081H   A   
STATUS . . . . . .  D ADDR   0056H   A   
STUDY. . . . . . .  B ADDR   0080H.4 A   
SUBADR . . . . . .  D ADDR   0001H   A   
VCC1 . . . . . . .  B ADDR   00A0H.0 A   
WRITEBUF . . . . .  N NUMB   0040H   A   


REGISTER BANK(S) USED: 0 

ASSEMBLY COMPLETE.  0 WARNING(S), 0 ERROR(S)

⌨️ 快捷键说明

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