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

📄 stimer.ls1

📁 mifarea卡程序mifarea卡程序mifarea卡程序
💻 LS1
📖 第 1 页 / 共 5 页
字号:
                     455     ;             {
                     456     ;                 Led1Cnt = 0;
                     457     ;                 LED1 = ~LED1;
                     458     ;             }
                     459     ;         }
                     460     ;         */
                     461     ;         
                     462     ;         if((!fSetting) && BuzzerTimes)
                     463                             ; SOURCE LINE # 112
002C 200017   F      464             JB      fSetting,?C0008
002F E500     F      465             MOV     A,BuzzerTimes
0031 6013            466             JZ      ?C0008
                     467     ;         {
                     468                             ; SOURCE LINE # 113
                     469     ;             BuzzerCnt ++;
                     470                             ; SOURCE LINE # 114
0033 0500     F      471             INC     BuzzerCnt
                     472     ;             if(BuzzerCnt >= BuzzerTick)
                     473                             ; SOURCE LINE # 115
0035 E500     F      474             MOV     A,BuzzerCnt
0037 C3              475             CLR     C
0038 9500     F      476             SUBB    A,BuzzerTick
003A 400A            477             JC      ?C0008
                     478     ;             {
                     479                             ; SOURCE LINE # 116
                     480     ;                 BuzzerCnt = 0;
                     481                             ; SOURCE LINE # 117
003C 750000   F      482             MOV     BuzzerCnt,#00H
                     483     ;                 BUZZER = ~BUZZER;
                     484                             ; SOURCE LINE # 118
003F B2B5            485             CPL     P3_5
                     486     ;                 if(BUZZER == BUZZEROFF)
                     487                             ; SOURCE LINE # 119
0041 30B502          488             JNB     P3_5,?C0008
                     489     ;                 {
                     490                             ; SOURCE LINE # 120
                     491     ;                     BuzzerTimes --;
                     492                             ; SOURCE LINE # 121
0044 1500     F      493             DEC     BuzzerTimes
                     494     ;                 }
                     495                             ; SOURCE LINE # 122
                     496     ;             }
                     497                             ; SOURCE LINE # 123
                     498     ;         }
                     499                             ; SOURCE LINE # 124
                     500     ;     }
                     501                             ; SOURCE LINE # 125
                     502     ; }
                     503                             ; SOURCE LINE # 126
0046                 504     ?C0008:
0046 D0D0            505             POP     PSW
0048 D0E0            506             POP     ACC
004A 32              507             RETI    
                     508     ; END OF IntSysTimer
                     509     
                     510     ; 
                     511     ; void beep(unsigned char times, unsigned char tick)
                     512     
----                 513             RSEG  ?PR?_beep?STIMER
0000                 514     _beep:
                     515             USING   0
                     516                             ; SOURCE LINE # 128
                     517     ;---- Variable 'times?240' assigned to Register 'R7' ----
                     518     ;---- Variable 'tick?241' assigned to Register 'R5' ----
                     519     ; {
A51 MACRO ASSEMBLER  STIMER                                                               03/13/2009 15:44:55 PAGE     9

                     520                             ; SOURCE LINE # 129
                     521     ;     fSetting = 1;
                     522                             ; SOURCE LINE # 130
0000 D200     F      523             SETB    fSetting
                     524     ;     BuzzerTick = tick;
                     525                             ; SOURCE LINE # 131
0002 CE              526             XCH     A,R6
0003 ED              527             MOV     A,R5
0004 CE              528             XCH     A,R6
0005 8E00     F      529             MOV     BuzzerTick,R6
                     530     ;     BuzzerTimes = times;
                     531                             ; SOURCE LINE # 132
0007 8F00     F      532             MOV     BuzzerTimes,R7
                     533     ;     if(times)
                     534                             ; SOURCE LINE # 133
0009 EF              535             MOV     A,R7
000A 6004            536             JZ      ?C0009
                     537     ;     {
                     538                             ; SOURCE LINE # 134
                     539     ;         BUZZER = BUZZERON;
                     540                             ; SOURCE LINE # 135
000C C2B5            541             CLR     P3_5
                     542     ;     }
                     543                             ; SOURCE LINE # 136
000E 8002            544             SJMP    ?C0010
0010                 545     ?C0009:
                     546     ;     else
                     547     ;     {
                     548                             ; SOURCE LINE # 138
                     549     ;         BUZZER = BUZZEROFF;
                     550                             ; SOURCE LINE # 139
0010 D2B5            551             SETB    P3_5
                     552     ;     }
                     553                             ; SOURCE LINE # 140
0012                 554     ?C0010:
                     555     ;     fSetting = 0;
                     556                             ; SOURCE LINE # 141
0012 C200     F      557             CLR     fSetting
                     558     ; }
                     559                             ; SOURCE LINE # 142
0014 22              560             RET     
                     561     ; END OF _beep
                     562     
                     563     ; 
                     564     ; void delay( unsigned int time )
                     565     
----                 566             RSEG  ?PR?_delay?STIMER
0000                 567     _delay:
                     568             USING   0
                     569                             ; SOURCE LINE # 144
0000 900000   F      570             MOV     DPTR,#time?342
0003 EE              571             MOV     A,R6
0004 F0              572             MOVX    @DPTR,A
0005 A3              573             INC     DPTR
0006 EF              574             MOV     A,R7
0007 F0              575             MOVX    @DPTR,A
                     576     ; {
                     577                             ; SOURCE LINE # 145
                     578     ;     unsigned int data startms;
                     579     ;     
                     580     ;     startms = GetTickCount();
                     581                             ; SOURCE LINE # 148
0008 120000   F      582             LCALL   GetTickCount
000B 8E00     F      583             MOV     startms?343,R6
000D 8F00     F      584             MOV     startms?343+01H,R7
000F                 585     ?C0012:
A51 MACRO ASSEMBLER  STIMER                                                               03/13/2009 15:44:55 PAGE    10

                     586     ;     
                     587     ;     while((GetTickCount() - startms) < time)
                     588                             ; SOURCE LINE # 150
000F 120000   F      589             LCALL   GetTickCount
0012 C3              590             CLR     C
0013 EF              591             MOV     A,R7
0014 9500     F      592             SUBB    A,startms?343+01H
0016 FF              593             MOV     R7,A
0017 EE              594             MOV     A,R6
0018 9500     F      595             SUBB    A,startms?343
001A FE              596             MOV     R6,A
001B D3              597             SETB    C
001C 900000   F      598             MOV     DPTR,#time?342+01H
001F E0              599             MOVX    A,@DPTR
0020 9F              600             SUBB    A,R7
0021 900000   F      601             MOV     DPTR,#time?342
0024 E0              602             MOVX    A,@DPTR
0025 9E              603             SUBB    A,R6
0026 50E7            604             JNC     ?C0012
                     605     ;       {
                     606                             ; SOURCE LINE # 151
                     607     ;       }
                     608                             ; SOURCE LINE # 152
                     609     ; }
                     610                             ; SOURCE LINE # 153
0028                 611     ?C0014:
0028 22              612             RET     
                     613     ; END OF _delay
                     614     
                     615     ; 
                     616     ; unsigned int GetTickCount(void)
                     617     
----                 618             RSEG  ?PR?GetTickCount?STIMER
0000                 619     GetTickCount:
                     620             USING   0
                     621                             ; SOURCE LINE # 155
                     622     ; {
                     623                             ; SOURCE LINE # 156
                     624     ;     unsigned int data cyl, ms;
                     625     ;     
                     626     ;       #ifdef  WATCHDOG
                     627     ;       ResetWDT();
                     628                             ; SOURCE LINE # 160
0000 120000   F      629             LCALL   ResetWDT
                     630     ;       #endif
                     631     ; 
                     632     ;     ET1 = 0;
                     633                             ; SOURCE LINE # 163
0003 C2AB            634             CLR     ET1
                     635     ;     ms = TStatus.ms;
                     636                             ; SOURCE LINE # 164
0005 850000   F      637             MOV     ms?445,TStatus+02H
0008 850000   F      638             MOV     ms?445+01H,TStatus+03H
                     639     ;     cyl = TStatus.Tick.cycles;
                     640                             ; SOURCE LINE # 165
000B 850000   F      641             MOV     cyl?444,TStatus
000E 850000   F      642             MOV     cyl?444+01H,TStatus+01H
                     643     ;     ET1 = 1;
                     644                             ; SOURCE LINE # 166
0011 D2AB            645             SETB    ET1
                     646     ;     
                     647     ;     return cyl / Interval.mscycles + ms;
                     648                             ; SOURCE LINE # 168
0013 AC00     F      649             MOV     R4,Interval
0015 AD00     F      650             MOV     R5,Interval+01H
0017 AE00     F      651             MOV     R6,cyl?444
A51 MACRO ASSEMBLER  STIMER                                                               03/13/2009 15:44:55 PAGE    11

0019 AF00     F      652             MOV     R7,cyl?444+01H
001B 120000   F      653             LCALL   ?C?UIDIV
001E E500     F      654             MOV     A,ms?445+01H
0020 2F              655             ADD     A,R7
0021 FF              656             MOV     R7,A
0022 E500     F      657             MOV     A,ms?445
0024 3E              658             ADDC    A,R6
0025 FE              659             MOV     R6,A
                     660     ; }
                     661                             ; SOURCE LINE # 169
0026                 662     ?C0015:
0026 22              663             RET     
                     664     ; END OF GetTickCount
                     665     
                     666     ; 
                     667     ; unsigned int GetTenTickCount(void)
                     668     
----                 669             RSEG  ?PR?GetTenTickCount?STIMER
0000                 670     GetTenTickCount:
                     671             USING   0
                     672                             ; SOURCE LINE # 171
                     673     ; {
                     674                             ; SOURCE LINE # 172
                     675     ;       unsigned int data tmp;
                     676     ;       
                     677     ;       #ifdef  WATCHDOG
                     678     ;       ResetWDT();
                     679                             ; SOURCE LINE # 176
0000 120000   F      680             LCALL   ResetWDT
                     681     ;       #endif
                     682     ;       
                     683     ;       ET1 = 0;
                     684                             ; SOURCE LINE # 179
0003 C2AB            685             CLR     ET1
                     686     ;       tmp = TStatus.ms;
                     687                             ; SOURCE LINE # 180

⌨️ 快捷键说明

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