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

📄 main.ls1

📁 读写ID卡源代码
💻 LS1
📖 第 1 页 / 共 5 页
字号:
                     446                             ; SOURCE LINE # 115
001E 900000   F      447             MOV     DPTR,#snr_counter
0021 E0              448             MOVX    A,@DPTR
0022 F599            449             MOV     SBUF,A
                     450     ; //////////////////////////////////////////////////////
A51 MACRO ASSEMBLER  MAIN                                                                 06/19/2008 00:27:03 PAGE     8

                     451     ;               }
                     452                             ; SOURCE LINE # 117
0024 80F5            453             SJMP    ?C0001
                     454     ; END OF main
                     455     
                     456     ;               else
                     457     ;               ;
                     458     ;       }
                     459     ; }
                     460     ; 
                     461     ; 
                     462     ; /****************************************************************************
                     463     ; 
                     464     ; ****************************************************************************/
                     465     ; void  init (void)
                     466     
----                 467             RSEG  ?PR?init?MAIN
0000                 468     init:
                     469                             ; SOURCE LINE # 127
                     470     ; {
                     471                             ; SOURCE LINE # 128
                     472     ; 
                     473     ; //             TMOD=0x21;
                     474     ;                TMOD=0x12;     //定时器0为8位自动重装;定时器1为16位计数器工作方式
                     475                             ; SOURCE LINE # 131
0000 758912          476             MOV     TMOD,#012H
                     477     ;                IP=0x00;
                     478                             ; SOURCE LINE # 132
0003 E4              479             CLR     A
0004 F5B8            480             MOV     IP,A
                     481     ;                TCON=1;         //外部中断0的触发方式为边沿方式
                     482                             ; SOURCE LINE # 133
0006 758801          483             MOV     TCON,#01H
                     484     ;                SCON=0x50;
                     485                             ; SOURCE LINE # 134
0009 759850          486             MOV     SCON,#050H
                     487     ;                PCON|=0x80;           //dual 4800X2=9600
                     488                             ; SOURCE LINE # 135
000C 438780          489             ORL     PCON,#080H
                     490     ; 
                     491     ; //             TH1=TL1=0xf4;      //fosc=22.1184Mhz baud=9600    TH1=TL1=256-(24000000/4800/32/12+0.5)
                     492     ; //             TH1=TL1=0xe8;         //22.1184MHZ
                     493     ; //             TH1=TL1=256-(40000000/2400/32/12+0.5);
                     494     ; //             TH1=TL1=0xD4;     //40MHZ
                     495     ; //             TH0=0xfc;           //1ms time
                     496     ; //             TL0=0x66;
                     497     ; //             IE=0x12;
                     498     ; //             TR0=1;
                     499     ; //             TR1=1;
                     500     ;                ES=1;
                     501                             ; SOURCE LINE # 146
000F D2AC            502             SETB    ES
                     503     ;   
                     504     ; //  LED = OFF;
                     505     ; //  delay_10ms(50);
                     506     ; //  LED = ON;
                     507     ; 
                     508     ; //  IT0 = 1;                          // Config ext0 as edge trigger for RC500
                     509     ; //  EX0 = 1;                  // Enable ext0 interrupt for RC500
                     510     ; 
                     511     ; //  EA = TRUE;                        // Enable all interrupts
                     512     ; 
                     513     ; }
                     514                             ; SOURCE LINE # 157
0011 22              515             RET     
                     516     ; END OF init
A51 MACRO ASSEMBLER  MAIN                                                                 06/19/2008 00:27:03 PAGE     9

                     517     
                     518     ; void m_readcard(void)
                     519     
----                 520             RSEG  ?PR?m_readcard?MAIN
0000                 521     m_readcard:
                     522                             ; SOURCE LINE # 158
                     523     ; {
                     524                             ; SOURCE LINE # 159
                     525     ;       TR0=0;
                     526                             ; SOURCE LINE # 160
0000 C28C            527             CLR     TR0
                     528     ;       ET0=0;
                     529                             ; SOURCE LINE # 161
0002 C2A9            530             CLR     ET0
                     531     ;       PX0=1;
                     532                             ; SOURCE LINE # 162
0004 D2B8            533             SETB    PX0
                     534     ;       m_sta=0;
                     535                             ; SOURCE LINE # 163
0006 E4              536             CLR     A
0007 900000   F      537             MOV     DPTR,#m_sta
000A F0              538             MOVX    @DPTR,A
                     539     ;       TH0=0x16;
                     540                             ; SOURCE LINE # 164
000B 758C16          541             MOV     TH0,#016H
                     542     ;       m_flag=0;
                     543                             ; SOURCE LINE # 165
000E C200     F      544             CLR     m_flag
                     545     ;       short_flag=0;
                     546                             ; SOURCE LINE # 166
0010 C200     F      547             CLR     short_flag
                     548     ;       EX0=1;
                     549                             ; SOURCE LINE # 167
0012 D2A8            550             SETB    EX0
                     551     ;       EA=1;
                     552                             ; SOURCE LINE # 168
0014 D2AF            553             SETB    EA
                     554     ; 
                     555     ; }
                     556                             ; SOURCE LINE # 170
0016 22              557             RET     
                     558     ; END OF m_readcard
                     559     
                     560     ; unsigned char CMP_STRING(unsigned char *pt1,
                     561     
----                 562             RSEG  ?PR?_CMP_STRING?MAIN
0000                 563     _CMP_STRING:
                     564             USING   0
                     565                             ; SOURCE LINE # 171
0000 900000   F      566             MOV     DPTR,#pt1?349
0003 EB              567             MOV     A,R3
0004 F0              568             MOVX    @DPTR,A
0005 A3              569             INC     DPTR
0006 EA              570             MOV     A,R2
0007 F0              571             MOVX    @DPTR,A
0008 A3              572             INC     DPTR
0009 E9              573             MOV     A,R1
000A F0              574             MOVX    @DPTR,A
                     575     ;                          unsigned char *pt2,unsigned char len)
                     576     ; {
                     577                             ; SOURCE LINE # 173
                     578     ;      unsigned char ct;         // fixed lenth 4.
                     579     ;      for (ct=0;ct<len;ct++)
                     580                             ; SOURCE LINE # 175
                     581     ;---- Variable 'ct?352' assigned to Register 'R7' ----
000B E4              582             CLR     A
A51 MACRO ASSEMBLER  MAIN                                                                 06/19/2008 00:27:03 PAGE    10

000C FF              583             MOV     R7,A
000D                 584     ?C0008:
000D 900000   F      585             MOV     DPTR,#len?351
0010 E0              586             MOVX    A,@DPTR
0011 FE              587             MOV     R6,A
0012 EF              588             MOV     A,R7
0013 C3              589             CLR     C
0014 9E              590             SUBB    A,R6
0015 5016            591             JNC     ?C0009
                     592     ;      {
                     593                             ; SOURCE LINE # 176
                     594     ;          if (*pt1++ != *pt2++)
                     595                             ; SOURCE LINE # 177
0017 900000   F      596             MOV     DPTR,#pt2?350
001A 120000   F      597             LCALL   L?0035
001D FE              598             MOV     R6,A
001E 900000   F      599             MOV     DPTR,#pt1?349
0021 120000   F      600             LCALL   L?0035
0024 6E              601             XRL     A,R6
0025 6003            602             JZ      ?C0010
                     603     ;          return 1;
                     604                             ; SOURCE LINE # 178
0027 7F01            605             MOV     R7,#01H
0029 22              606             RET     
                     607     ;      }
                     608                             ; SOURCE LINE # 179
002A                 609     ?C0010:
002A 0F              610             INC     R7
002B 80E0            611             SJMP    ?C0008
002D                 612     ?C0009:
                     613     ;      return 0;                 // equal return 0.     
                     614                             ; SOURCE LINE # 180
002D 7F00            615             MOV     R7,#00H
                     616     ; }
                     617                             ; SOURCE LINE # 181
002F                 618     ?C0012:
002F 22              619             RET     
                     620     ; END OF _CMP_STRING
                     621     
                     622     ; 
                     623     ; void  delay_10ms (uint _10ms)
                     624     
----                 625             RSEG  ?PR?_delay_10ms?MAIN
0000                 626     _delay_10ms:
                     627             USING   0
                     628                             ; SOURCE LINE # 183
                     629     ;---- Variable '_10ms?453' assigned to Register 'R6/R7' ----
                     630     ; {
                     631                             ; SOURCE LINE # 184
                     632     ;  
                     633     ;    ET2 = 0;   // Disable timer2 interrupt
                     634                             ; SOURCE LINE # 186
0000 C2AD            635             CLR     ET2
                     636     ;   T2CON = 0x04;       // 16-bit auto-reload, clear TF2, start timer
                     637                             ; SOURCE LINE # 187
0002 75C804          638             MOV     T2CON,#04H
0005                 639     ?C0013:
                     640     ;   while (_10ms--)
                     641                             ; SOURCE LINE # 188
0005 EF              642             MOV     A,R7
0006 1F              643             DEC     R7
0007 AC06            644             MOV     R4,AR6
0009 7001            645             JNZ     ?C0032
000B 1E              646             DEC     R6
000C                 647     ?C0032:
000C 4C              648             ORL     A,R4
A51 MACRO ASSEMBLER  MAIN                                                                 06/19/2008 00:27:03 PAGE    11

000D 600C            649             JZ      ?C0014
                     650     ;   {
                     651                             ; SOURCE LINE # 189
000F                 652     ?C0015:
                     653     ;       while (!TF2)
                     654                             ; SOURCE LINE # 190
000F 20CF05          655             JB      TF2,?C0016
                     656     ;       {
                     657                             ; SOURCE LINE # 191
                     658     ; //      if (CmdValid || CmdReceived)
                     659     ;         {
                     660                             ; SOURCE LINE # 193
                     661     ;               TR2 = FALSE;
                     662                             ; SOURCE LINE # 194
0012 C2CA            663             CLR     TR2
                     664     ;               TF2 = FALSE;
                     665                             ; SOURCE LINE # 195
0014 C2CF            666             CLR     TF2
0016 22              667             RET     
                     668     ;               return;
                     669     ;         }
                     670                             ; SOURCE LINE # 197
                     671     ;       }
                     672                             ; SOURCE LINE # 198

⌨️ 快捷键说明

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