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

📄 lq51_a.lst

📁 Keil 自带的 RTX51—Tiny 系统有这样几个缺点:1、非占先式任 务调度,这样系统的实时性就很难保证 2、提供的系统服务太少, 只有 wait 与 signal。而 RTX51—Tiny
💻 LST
📖 第 1 页 / 共 2 页
字号:
0004 C28D            196                     CLR     TF0
0006 E58A            197                     MOV     A,TL0
0008 24F8            198                     ADD     A,#LOW(-10000 + 8)
000A F58A            199                     MOV     TL0,A
000C E58C            200                     MOV     A,TH0
000E 34D8            201                     ADDC    A,#HIGH(-10000 + 8)
0010 F58C            202                     MOV     TH0,A
0012 D28C            203                     SETB    TR0
0014 E4              204                     CLR     A
0015 FF              205                     MOV     R7,A
0016                 206     ?MY?C0001:
0016 7400     F      207                     MOV     A,#LOW (lqTaskTimer)
0018 2F              208                     ADD     A,R7
0019 F8              209                     MOV     R0,A
001A E6              210                     MOV     A,@R0
001B 6018            211                     JZ      ?MY?C0003
001D 16              212                     DEC     @R0
001E 7400     F      213                     MOV     A,#LOW (lqTaskTimer)
0020 2F              214                     ADD     A,R7
0021 F8              215                     MOV     R0,A
0022 E6              216                     MOV     A,@R0
0023 7010            217                     JNZ     ?MY?C0003
0025 7400     F      218                     MOV     A,#LOW (lqTaskState)
0027 2F              219                     ADD     A,R7
0028 F8              220                     MOV     R0,A
0029 7410            221                     MOV     A,#0x10
002B F4              222                     CPL     A
002C 56              223                     ANL     A,@R0
002D F6              224                     MOV     @R0,A
002E EF              225                     MOV     A,R7
002F 900000   F      226                     MOV     DPTR,#lqMap
0032 93              227                     MOVC    A,@A+DPTR
0033 4200     F      228                     ORL     lqRdyTbl,A
0035                 229     ?MY?C0003:
0035 0F              230                     INC     R7
0036 BF02DD          231                     CJNE    R7,#2,?MY?C0001
0039                 232     ?MY?C0002:
0039 D2AF            233                     SETB    EA
003B 22              234                     RET
                     235     
                     236     PUBLIC  lqSche
                     237     ?LQ51?SCHE?S    SEGMENT CODE
----                 238                     RSEG    ?LQ51?SCHE?S
0000                 239     lqSche:
0000 C2AF            240                     CLR     EA
0002 7400     F      241                     MOV     A,#lqTaskStack
0004 2500     F      242                     ADD     A,lqCrt
0006 F8              243                     MOV     R0,A
0007 E500     F      244                     MOV     A,lqCrt
0009 6402            245                     XRL     A,#2
000B 7004            246                     JNZ     ?C012
000D 8681            247                     MOV     SP,@R0
000F 8002            248                     SJMP    ?C013
0011                 249     ?C012:          
0011 A681            250                     MOV     @R0,SP
0013                 251     ?C013:
0013 900000   F      252                     MOV     DPTR,#lqMap
0016 7F00            253                     MOV     R7,#0
0018                 254     ?C015:
0018 EF              255                     MOV     A,R7
0019 93              256                     MOVC    A,@A+DPTR
A51 MACRO ASSEMBLER  LQ51_A                                                               04/06/2009 19:19:27 PAGE     5

001A 5500     F      257                     ANL     A,lqRdyTbl
001C 7003            258                     JNZ     ?C014
001E 0F              259                     INC     R7
001F 80F7            260                     SJMP    ?C015
0021                 261     ?C014:
0021 E500     F      262                     MOV     A,lqCrt
0023 6F              263                     XRL     A,R7
0024 7002            264                     JNZ     ?C024
0026 8062            265                     JMP     ?C016
0028                 266     ?C024:
0028 7400     F      267                     MOV     A,#lqTaskStack
002A 2F              268                     ADD     A,R7
002B F8              269                     MOV     R0,A
002C E6              270                     MOV     A,@R0
002D FE              271                     MOV     R6,A
002E C3              272                     CLR     C
002F EF              273                     MOV     A,R7
0030 9500     F      274                     SUBB    A,lqCrt
0032 502C            275                     JNC     ?C017
0034 E581            276                     MOV     A,SP
0036 C3              277                     CLR     C
0037 9E              278                     SUBB    A,R6
0038 FD              279                     MOV     R5,A
0039                 280     ?C018:          
0039 A881            281                     MOV     R0,SP
003B E6              282                     MOV     A,@R0
003C A800     F      283                     MOV     R0,lqSPtemp
003E F6              284                     MOV     @R0,A
003F 1500     F      285                     DEC     lqSPtemp
0041 1581            286                     DEC     SP
0043 DDF4            287                     DJNZ    R5,?C018
0045 E500     F      288                     MOV     A,lqSPtemp
0047 C3              289                     CLR     C
0048 9581            290                     SUBB    A,SP
004A FD              291                     MOV     R5,A
004B AB00     F      292                     MOV     R3,lqCrt
004D 0B              293                     INC     R3
004E EF              294                     MOV     A,R7
004F FC              295                     MOV     R4,A
0050                 296     ?C020:
0050 0C              297                     INC     R4
0051 EB              298                     MOV     A,R3
0052 6C              299                     XRL     A,R4
0053 6035            300                     JZ      ?C016
0055 EC              301                     MOV     A,R4
0056 2400     F      302                     ADD     A,#lqTaskStack
0058 F8              303                     MOV     R0,A
0059 E6              304                     MOV     A,@R0
005A 2D              305                     ADD     A,R5
005B F6              306                     MOV     @R0,A
005C 80F2            307                     SJMP    ?C020
005E 802A            308                     JMP     ?C016
0060                 309     ?C017:
0060 EE              310                     MOV     A,R6
0061 C3              311                     CLR     C
0062 9500     F      312                     SUBB    A,lqSPtemp
0064 FD              313                     MOV     R5,A
0065                 314     ?C021:          
0065 0581            315                     INC     SP
0067 0500     F      316                     INC     lqSPtemp
0069 A800     F      317                     MOV     R0,lqSPtemp
006B E6              318                     MOV     A,@R0
006C A881            319                     MOV     R0,SP
006E F6              320                     MOV     @R0,A
006F DDF4            321                     DJNZ    R5,?C021
0071 E500     F      322                     MOV     A,lqSPtemp
A51 MACRO ASSEMBLER  LQ51_A                                                               04/06/2009 19:19:27 PAGE     6

0073 9581            323                     SUBB    A,SP
0075 FD              324                     MOV     R5,A
0076 EF              325                     MOV     A,R7
0077 FC              326                     MOV     R4,A
0078 AB00     F      327                     MOV     R3,lqCrt
007A 0C              328                     INC     R4
007B                 329     ?C022:          
007B 0B              330                     INC     R3
007C EC              331                     MOV     A,R4
007D 6B              332                     XRL     A,R3
007E 600A            333                     JZ      ?C016
0080 EB              334                     MOV     A,R3
0081 2400     F      335                     ADD     A,#lqTaskStack
0083 F8              336                     MOV     R0,A
0084 E6              337                     MOV     A,@R0
0085 C3              338                     CLR     C
0086 9D              339                     SUBB    A,R5
0087 F6              340                     MOV     @R0,A
0088 80F1            341                     SJMP    ?C022
008A                 342     ?C016:          
008A 8F00     F      343                     MOV     lqCrt,R7
008C E500     F      344                     MOV     A,lqCrt
008E 6402            345                     XRL     A,#2
0090 602C            346                     JZ      ?C023
0092 900000   F      347                     MOV     DPTR,#lqMap
0095 E500     F      348                     MOV     A,lqCrt
0097 93              349                     MOVC    A,@A+DPTR
0098 5500     F      350                     ANL     A,lqSwitchType
009A 6022            351                     JZ      ?C023
009C E500     F      352                     MOV     A,lqCrt
009E 93              353                     MOVC    A,@A+DPTR
009F F4              354                     CPL     A
00A0 5500     F      355                     ANL     A,lqSwitchType
00A2 F500     F      356                     MOV     lqSwitchType,A
00A4 D0F0            357                     POP     B
00A6 D082            358                     POP     DPL
00A8 D083            359                     POP     DPH
00AA D0D0            360                     POP     PSW
00AC D007            361                     POP     AR7
00AE D006            362                     POP     AR6
00B0 D005            363                     POP     AR5
00B2 D004            364                     POP     AR4
00B4 D003            365                     POP     AR3
00B6 D002            366                     POP     AR2
00B8 D001            367                     POP     AR1
00BA D000            368                     POP     AR0
00BC D0E0            369                     POP     ACC
00BE                 370     ?C023:
00BE D2AF            371                     SETB    EA
00C0 22              372                     RET
                     373     PUBLIC  ?RTX_TASKENTRY
                     374     ?RTX?TASKENT?S  SEGMENT CODE
----                 375                     RSEG    ?RTX?TASKENT?S
0000                 376     ?RTX_TASKENTRY: DS      2
                     377     
                     378     ;------------------------------------------------
                     379     ; Start lq51 Kernel
                     380     ;------------------------------------------------
                     381     
                     382     ?RTX?CODE       SEGMENT CODE
----                 383                     RSEG    ?RTX?CODE
                     384                     USING   0
                     385     EXTRN CODE (?C_STARTUP)
                     386     PUBLIC  main
0000 7800     F      387     main:           MOV     R0,#lqTaskStack
0002 A681            388                     MOV     @R0,SP
A51 MACRO ASSEMBLER  LQ51_A                                                               04/06/2009 19:19:27 PAGE     7

                     389     
0004 900000   F      390                     MOV     DPTR,#?RTX?TASKENT?S            ;设置0号任务的堆栈
0007 7401            391                     MOV     A,#1
0009 93              392                     MOVC    A,@A+DPTR
000A C0E0            393                     PUSH    ACC
000C E4              394                     CLR     A
000D 93              395                     MOVC    A,@A+DPTR
000E C0E0            396                     PUSH    ACC
                     397     
0010 7402            398                     MOV     A,#2
0012 FF              399                     MOV     R7,A                            ;设置循环次

⌨️ 快捷键说明

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