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

📄 main.ls1

📁 读写ID卡源代码
💻 LS1
📖 第 1 页 / 共 5 页
字号:
0000                 217         counter?040:   DS   1
0001                 218        counter2?041:   DS   1
0002                 219             ttt?042:   DS   1
0003                 220           mfout?043:   DS   1
0004                 221             tt1?044:   DS   2
0006                 222     cardserialno?046:   DS   4
000A                 223            sak1?047:   DS   3
000D                 224               i?048:   DS   1
                     225     
----                 226             RSEG  ?XD?_CMP_STRING?MAIN
0000                 227     ?_CMP_STRING?BYTE:
0000                 228             pt1?349:   DS   3
0003                 229             pt2?350:   DS   3
0006                 230             len?351:   DS   1
                     231     
----                 232             RSEG  ?XD?MAIN
0000                 233              rxhead:   DS   1
0001                 234              txhead:   DS   1
0002                 235       secondcounter:   DS   2
0004                 236               m_sta:   DS   1
0005                 237        sameoutvalue:   DS   1
0006                 238           blockdata:   DS   16
0016                 239        receive_buf1:   DS   1
0017                 240         snr_counter:   DS   1
0018                 241                size:   DS   1
0019                 242            send_buf:   DS   8
0021                 243             m_idata:   DS   5
0026                 244           mjcounter:   DS   1
0027                 245           mscounter:   DS   2
0029                 246                  tt:   DS   2
002B                 247              mjdata:   DS   1
                     248     
----                 249             RSEG  ?BA?MAIN
0000                 250                flag:   DS   1
0001                 251               flag1:   DS   1
0002                 252               flag2:   DS   1
A51 MACRO ASSEMBLER  MAIN                                                                 06/19/2008 00:27:03 PAGE     5

  0009               253     half_flag       EQU     (flag1+0).1
  000E               254     mleft   EQU     (flag1+0).6
  0003               255     life_flag       EQU     (flag+0).3
  0010               256     y0_flag EQU     (flag2+0).0
  0007               257     desk_flag       EQU     (flag+0).7
  0011               258     y1_flag EQU     (flag2+0).1
  0012               259     y2_flag EQU     (flag2+0).2
  0013               260     y3_flag EQU     (flag2+0).3
  000A               261     short_flag      EQU     (flag1+0).2
  0002               262     down_flag       EQU     (flag+0).2
  0000               263     out_flag        EQU     (flag+0).0
  0001               264     up_flag EQU     (flag+0).1
  000D               265     receive_flag    EQU     (flag1+0).5
  000C               266     m_data_flag     EQU     (flag1+0).4
  0008               267     m_flag  EQU     (flag1+0).0
  000B               268     rcv_bit EQU     (flag1+0).3
  0006               269     display_flag    EQU     (flag+0).6
  0004               270     second_flag     EQU     (flag+0).4
                     271     
----                 272             RSEG  ?C_INITSEG
0000 41              273             DB      041H
0001 0000     F      274             DW      snr_counter
0003 01              275             DB      001H
                     276     
0004 41              277             DB      041H
0005 0000     F      278             DW      txhead
0007 00              279             DB      000H
                     280     
                     281     ; /****************************************************************************
                     282     ; * File:         MAIN.C                                                      *
                     283     ; * Version:      1.0                                                               *
                     284     ; * Created:      21.06.2005                                                  *
                     285     ; * Last Change:  22.06.2005                                                  *
                     286     ; * Author:       yuanjun yin                                                 *
                     287     ; * Compiler:     KEIL C51 uVision2 V2.23                                     *
                     288     ; * Description:  89C54RD+-Firmware for MFRC500 Demo Serial Reader            *
                     289     ; ****************************************************************************/
                     290     ; #include "main.h"
                     291     ; #include <p89c51rx.h>
                     292     ; 
                     293     ; sbit    LED                           = P3^5;
                     294     ; void sort(void);
                     295     ; // Serial Number of the MFRC500 
                     296     ; 
                     297     ; unsigned char tt[2];
                     298     ; uchar snr_counter=1;
                     299     ; uchar m_sta;        //定时读写标志   =1,起始   =2
                     300     ; uchar m_idata[5];
                     301     ; uchar rxhead;
                     302     ; uchar txhead=0;
                     303     ; uchar receive_buf1[1];
                     304     ; uchar send_buf[8];
                     305     ; uchar mjcounter;
                     306     ; //uchar desk_counter=0;
                     307     ; uchar mjdata;
                     308     ; uchar sameoutvalue;
                     309     ; uint  mscounter;
                     310     ; uint  secondcounter;
                     311     ; 
                     312     ; //unsigned char blockdata[16];
                     313     ; uchar size;
                     314     ; 
                     315     ; void init(void);
                     316     ; //void led_flash(void);
                     317     ; unsigned char mifare_init(void);
                     318     ; unsigned char read_3card(void);
A51 MACRO ASSEMBLER  MAIN                                                                 06/19/2008 00:27:03 PAGE     6

                     319     ; unsigned char CMP_STRING(unsigned char *pt1,
                     320     ;                          unsigned char *pt2,unsigned char len);
                     321     ; //void rec_comm(void);
                     322     ; unsigned char read_card3(void);
                     323     ; void cpu_sleep(void);
                     324     ; unsigned char output(uchar hhh);
                     325     ; uchar press_key(void);
                     326     ; void selectout(unsigned char tt);
                     327     ; void swapdata(unsigned int *x,unsigned int *y);
                     328     ; void press_data(uchar tty);
                     329     ; unsigned char blockdata[16];
                     330     ; void cmpdata(void);
                     331     ; void sort_mjdata(void);
                     332     ; //void rec_comm(void);
                     333     ; void sameout(unsigned char tt);
                     334     ; void clearout(void);
                     335     ; void flash_led(void);
                     336     ; void m_readcard(void);  
                     337     ;  
                     338     ; unsigned char bdata flag;
                     339     ;               sbit out_flag=flag^0;
                     340     ;               sbit up_flag=flag^1;             //上活门标志
                     341     ;               sbit down_flag=flag^2;           //下活门标志
                     342     ;               sbit life_flag=flag^3;           //生死门标志
                     343     ;               sbit second_flag=flag^4;         //输出二次标志
                     344     ; //            sbit reset_flag=flag^5;
                     345     ;               sbit display_flag=flag^6;
                     346     ;               sbit desk_flag=flag^7;
                     347     ; 
                     348     ; unsigned char bdata flag1;
                     349     ;               sbit m_flag=flag1^0;
                     350     ;               sbit half_flag=flag1^1;
                     351     ;               sbit short_flag=flag1^2;
                     352     ;               sbit rcv_bit=flag1^3;
                     353     ;               sbit m_data_flag=flag1^4;
                     354     ;               sbit receive_flag=flag1^5;
                     355     ;               sbit mleft=flag1^6;
                     356     ; 
                     357     ; 
                     358     ; unsigned char bdata flag2;
                     359     ;               sbit y0_flag=flag2^0;
                     360     ;               sbit y1_flag=flag2^1;
                     361     ;               sbit y2_flag=flag2^2;
                     362     ;               sbit y3_flag=flag2^3;
                     363     ; 
                     364     ; /****************************************************************************
                     365     ; 
                     366     ; ****************************************************************************/
                     367     
----                 368             RSEG  ?PR?MAIN
0000                 369     Com0022:
0000                 370     L?0035:
                     371             USING   0
0000 E0              372             MOVX    A,@DPTR
0001 FB              373             MOV     R3,A
0002 A3              374             INC     DPTR
0003 E4              375             CLR     A
0004 75F001          376             MOV     B,#01H
0007 120000   F      377             LCALL   ?C?ILDIX
000A A9F0            378             MOV     R1,B
000C FA              379             MOV     R2,A
000D 020000   F      380             LJMP    ?C?CLDPTR
                     381     ; END OF Com0022
                     382     
                     383     ; void  main (void)
                     384     
A51 MACRO ASSEMBLER  MAIN                                                                 06/19/2008 00:27:03 PAGE     7

----                 385             RSEG  ?PR?main?MAIN
0000                 386     main:
                     387             USING   0
                     388                             ; SOURCE LINE # 87
                     389     ; {
                     390                             ; SOURCE LINE # 88
                     391     ;   unsigned char counter,counter2,ttt;
                     392     ;   unsigned char mfout=2;//readbuf[16];
                     393                             ; SOURCE LINE # 90
0000 900000   F      394             MOV     DPTR,#mfout?043
0003 7402            395             MOV     A,#02H
0005 F0              396             MOVX    @DPTR,A
                     397     ;   unsigned char tt1[2];
                     398     ;   unsigned char status1;
                     399     ;   unsigned char cardserialno[4];
                     400     ;   unsigned char *sak1;
                     401     ;   unsigned char i;
                     402     ; //  reset_flag=0;      //复位标志为0
                     403     ; 
                     404     ;   init();
                     405                             ; SOURCE LINE # 98
0006 120000   F      406             LCALL   init
                     407     ;   LED=0;
                     408                             ; SOURCE LINE # 99
0009 C2B5            409             CLR     LED
                     410     ;   mjcounter=1;        
                     411                             ; SOURCE LINE # 100
000B 900000   F      412             MOV     DPTR,#mjcounter
000E 7401            413             MOV     A,#01H
0010 F0              414             MOVX    @DPTR,A
                     415     ;   
                     416     ;       status1=M500PcdConfig();        // Initialise the RC500
                     417                             ; SOURCE LINE # 102
0011 120000   F      418             LCALL   M500PcdConfig
                     419     ;---- Variable 'status1?045' assigned to Register 'R7' ----
                     420     ; //    M500PcdMfOutSelect(mfout);
                     421     ;       secondcounter=0;
                     422                             ; SOURCE LINE # 104
0014 E4              423             CLR     A
0015 900000   F      424             MOV     DPTR,#secondcounter
0018 F0              425             MOVX    @DPTR,A
0019 A3              426             INC     DPTR
001A F0              427             MOVX    @DPTR,A
                     428     ; 
                     429     ; 
                     430     ;               
                     431     ;       for(;;)
                     432                             ; SOURCE LINE # 108
001B                 433     ?C0001:
                     434     ;       {
                     435                             ; SOURCE LINE # 109
                     436     ; 
                     437     ;               if (status1==0)
                     438                             ; SOURCE LINE # 111
001B EF              439             MOV     A,R7
001C 70FD            440             JNZ     ?C0001
                     441     ;               {
                     442                             ; SOURCE LINE # 112
                     443     ; //                    flash_led();
                     444     ; 
                     445     ;                       SBUF=snr_counter;

⌨️ 快捷键说明

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