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

📄 sci_dm.lst

📁 PATTERNS FOR TIME-TRIGGERED EMBEDDED SYSTEMS by Michael J. Pont This code is copyright (c) 200
💻 LST
📖 第 1 页 / 共 5 页
字号:


             ; FUNCTION SCI_D_MASTER_Init_T2 (BEGIN)
                                           ; SOURCE LINE # 74
                                           ; SOURCE LINE # 75
                                           ; SOURCE LINE # 79
0000 C2AF              CLR     EA
                                           ; SOURCE LINE # 83
0002 E4                CLR     A
0003 F500        R     MOV     i,A
0005         ?C0001:
                                           ; SOURCE LINE # 84
                                           ; SOURCE LINE # 85
0005 AF00        R     MOV     R7,i
0007 120000      E     LCALL   _SCH_Delete_Task
                                           ; SOURCE LINE # 86
000A 0500        R     INC     i
000C E500        R     MOV     A,i
000E C3                CLR     C
000F 9402              SUBB    A,#02H
0011 40F2              JC      ?C0001
0013         ?C0002:
                                           ; SOURCE LINE # 91
0013 E4                CLR     A
0014 F500        E     MOV     Error_code_G,A
                                           ; SOURCE LINE # 103
0016 75C804            MOV     T2CON,#04H
                                           ; SOURCE LINE # 104
0019 F5C9              MOV     T2MOD,A
                                           ; SOURCE LINE # 106
001B 75CDFC            MOV     TH2,#0FCH
                                           ; SOURCE LINE # 107
001E 75CBFC            MOV     RCAP2H,#0FCH
                                           ; SOURCE LINE # 108
0021 75CC18            MOV     TL2,#018H
                                           ; SOURCE LINE # 109
0024 75CA18            MOV     RCAP2L,#018H
                                           ; SOURCE LINE # 111
0027 D2AD              SETB    ET2
                                           ; SOURCE LINE # 113
0029 D2CA              SETB    TR2
                                           ; SOURCE LINE # 115
002B 22                RET     
             ; FUNCTION SCI_D_MASTER_Init_T2 (END)

             ; FUNCTION SCI_D_MASTER_Start (BEGIN)
                                           ; SOURCE LINE # 129
                                           ; SOURCE LINE # 130
                                           ; SOURCE LINE # 132
0000 120000      R     LCALL   _?SCI_D_MASTER_Enter_Safe_State
                                           ; SOURCE LINE # 136
0003 7FF4              MOV     R7,#0F4H
0005 7E01              MOV     R6,#01H
0007 120000      E     LCALL   _Hardware_Delay_T0
                                           ; SOURCE LINE # 140
000A D2A7              SETB    Interrupt_output_pin
                                           ; SOURCE LINE # 141
000C 7F05              MOV     R7,#05H
000E 7E00              MOV     R6,#00H
0010 120000      E     LCALL   _Hardware_Delay_T0
                                           ; SOURCE LINE # 142
C51 COMPILER V6.10  SCI_DM                                                                 04/18/2001 16:48:12 PAGE 21  

0013 C2A7              CLR     Interrupt_output_pin
                                           ; SOURCE LINE # 143
0015 7F05              MOV     R7,#05H
0017 7E00              MOV     R6,#00H
0019 120000      E     LCALL   _Hardware_Delay_T0
                                           ; SOURCE LINE # 145
001C D2A7              SETB    Interrupt_output_pin
                                           ; SOURCE LINE # 148
001E D2AF              SETB    EA
                                           ; SOURCE LINE # 149
0020 22                RET     
             ; FUNCTION SCI_D_MASTER_Start (END)

             ; FUNCTION SCI_D_MASTER_Update_T2 (BEGIN)
0000 C0E0              PUSH    ACC
0002 C0F0              PUSH    B
0004 C083              PUSH    DPH
0006 C082              PUSH    DPL
0008 C0D0              PUSH    PSW
000A 75D000            MOV     PSW,#00H
000D C000              PUSH    AR0
000F C001              PUSH    AR1
0011 C002              PUSH    AR2
0013 C003              PUSH    AR3
0015 C004              PUSH    AR4
0017 C005              PUSH    AR5
0019 C006              PUSH    AR6
001B C007              PUSH    AR7
                                           ; SOURCE LINE # 160
                                           ; SOURCE LINE # 164
001D C2CF              CLR     TF2
                                           ; SOURCE LINE # 167
001F 120000      R     LCALL   SCI_D_MASTER_Process_Ack
0022 5008              JNC     ?C0006
                                           ; SOURCE LINE # 168
                                           ; SOURCE LINE # 170
0024 750005      E     MOV     Error_code_G,#05H
                                           ; SOURCE LINE # 173
0027 120000      R     LCALL   _?SCI_D_MASTER_Enter_Safe_State
002A         ?C0007:
                                           ; SOURCE LINE # 174
002A 80FE              SJMP    ?C0007
                                           ; SOURCE LINE # 175
002C         ?C0006:
                                           ; SOURCE LINE # 178
002C 120000      R     LCALL   SCI_D_MASTER_Send_Tick_Message
                                           ; SOURCE LINE # 181
;---- Variable 'Index' assigned to Register 'R7' ----
002F E4                CLR     A
0030 FF                MOV     R7,A
0031         ?C0009:
                                           ; SOURCE LINE # 182
                                           ; SOURCE LINE # 184
0031 EF                MOV     A,R7
0032 75F007            MOV     B,#07H
0035 A4                MUL     AB
0036 2400        E     ADD     A,#LOW SCH_tasks_G
0038 F8                MOV     R0,A
0039 E6                MOV     A,@R0
003A FC                MOV     R4,A
003B 08                INC     R0
003C E6                MOV     A,@R0
C51 COMPILER V6.10  SCI_DM                                                                 04/18/2001 16:48:12 PAGE 22  

003D 4C                ORL     A,R4
003E 6046              JZ      ?C0011
                                           ; SOURCE LINE # 185
                                           ; SOURCE LINE # 186
0040 EF                MOV     A,R7
0041 75F007            MOV     B,#07H
0044 A4                MUL     AB
0045 2400        E     ADD     A,#LOW SCH_tasks_G+02H
0047 F8                MOV     R0,A
0048 E6                MOV     A,@R0
0049 FC                MOV     R4,A
004A 08                INC     R0
004B E6                MOV     A,@R0
004C 4C                ORL     A,R4
004D 7028              JNZ     ?C0013
                                           ; SOURCE LINE # 187
                                           ; SOURCE LINE # 189
004F EF                MOV     A,R7
0050 75F007            MOV     B,#07H
0053 A4                MUL     AB
0054 2400        E     ADD     A,#LOW SCH_tasks_G+06H
0056 F8                MOV     R0,A
0057 06                INC     @R0
                                           ; SOURCE LINE # 191
0058 EF                MOV     A,R7
0059 75F007            MOV     B,#07H
005C A4                MUL     AB
005D 2400        E     ADD     A,#LOW SCH_tasks_G+04H
005F F8                MOV     R0,A
0060 E6                MOV     A,@R0
0061 FC                MOV     R4,A
0062 08                INC     R0
0063 E6                MOV     A,@R0
0064 FD                MOV     R5,A
0065 4C                ORL     A,R4
0066 601E              JZ      ?C0011
                                           ; SOURCE LINE # 192
                                           ; SOURCE LINE # 194
0068 EF                MOV     A,R7
0069 75F007            MOV     B,#07H
006C A4                MUL     AB
006D 2400        E     ADD     A,#LOW SCH_tasks_G+02H
006F F8                MOV     R0,A
0070 A604              MOV     @R0,AR4
0072 08                INC     R0
0073 A605              MOV     @R0,AR5
                                           ; SOURCE LINE # 195
                                           ; SOURCE LINE # 196
0075 800F              SJMP    ?C0011
0077         ?C0013:
                                           ; SOURCE LINE # 198
                                           ; SOURCE LINE # 200
0077 EF                MOV     A,R7
0078 75F007            MOV     B,#07H
007B A4                MUL     AB
007C 2400        E     ADD     A,#LOW SCH_tasks_G+02H
007E F8                MOV     R0,A
007F 08                INC     R0
0080 E6                MOV     A,@R0
0081 16                DEC     @R0
0082 7002              JNZ     ?C0023
0084 18                DEC     R0
C51 COMPILER V6.10  SCI_DM                                                                 04/18/2001 16:48:12 PAGE 23  

0085 16                DEC     @R0
0086         ?C0023:
                                           ; SOURCE LINE # 201
                                           ; SOURCE LINE # 202
                                           ; SOURCE LINE # 203
0086         ?C0011:
0086 0F                INC     R7
0087 BF02A7            CJNE    R7,#02H,?C0009
008A         ?C0010:
                                           ; SOURCE LINE # 206
008A D2A7              SETB    Interrupt_output_pin
                                           ; SOURCE LINE # 207
008C D007              POP     AR7
008E D006              POP     AR6
0090 D005              POP     AR5
0092 D004              POP     AR4
0094 D003              POP     AR3
0096 D002              POP     AR2
0098 D001              POP     AR1
009A D000              POP     AR0
009C D0D0              POP     PSW
009E D082              POP     DPL
00A0 D083              POP     DPH
00A2 D0F0              POP     B
00A4 D0E0              POP     ACC
00A6 32                RETI    
             ; FUNCTION SCI_D_MASTER_Update_T2 (END)

             ; FUNCTION SCI_D_MASTER_Send_Tick_Message (BEGIN)
                                           ; SOURCE LINE # 220
                                           ; SOURCE LINE # 221
                                           ; SOURCE LINE # 223
0000 850080      R     MOV     P0,Tick_message_data_G
                                           ; SOURCE LINE # 226
0003 C2A7              CLR     Interrupt_output_pin
                                           ; SOURCE LINE # 227
0005 22                RET     
             ; FUNCTION SCI_D_MASTER_Send_Tick_Message (END)

             ; FUNCTION SCI_D_MASTER_Process_Ack (BEGIN)
                                           ; SOURCE LINE # 240
                                           ; SOURCE LINE # 241
                                           ; SOURCE LINE # 242
0000 300008      R     JNB     First_call_G,?C0018
                                           ; SOURCE LINE # 243
                                           ; SOURCE LINE # 245
0003 C200        R     CLR     First_call_G
                                           ; SOURCE LINE # 248
0005 A2A6              MOV     C,Slave_watchdog_pin
0007 9200        R     MOV     Watchdog_input_previous_G,C
                                           ; SOURCE LINE # 249
0009 800E              SJMP    ?C0019
000B         ?C0018:
                                           ; SOURCE LINE # 251
                                           ; SOURCE LINE # 254
000B A200        R     MOV     C,Watchdog_input_previous_G
000D 30A601            JNB     Slave_watchdog_pin,?C0024
0010 B3                CPL     C
0011         ?C0024:
0011 4002              JC      ?C0020
                                           ; SOURCE LINE # 255
                                           ; SOURCE LINE # 257
C51 COMPILER V6.10  SCI_DM                                                                 04/18/2001 16:48:12 PAGE 24  

0013 D3                SETB    C
0014 22                RET     
                                           ; SOURCE LINE # 258
0015         ?C0020:
                                           ; SOURCE LINE # 261
0015 A2A6              MOV     C,Slave_watchdog_pin
0017 9200        R     MOV     Watchdog_input_previous_G,C
                                           ; SOURCE LINE # 262
0019         ?C0019:
                                           ; SOURCE LINE # 265
0019 7580FF            MOV     P0,#0FFH
                                           ; SOURCE LINE # 268
001C 858000      R     MOV     Ack_message_data_G,P0
                                           ; SOURCE LINE # 270
001F C3                CLR     C
                                           ; SOURCE LINE # 271
0020         ?C0021:
0020 22                RET     
             ; FUNCTION SCI_D_MASTER_Process_Ack (END)

             ; FUNCTION _?SCI_D_MASTER_Enter_Safe_State (BEGIN)
                                           ; SOURCE LINE # 287
                                           ; SOURCE LINE # 292
0000 120000      E     LCALL   TRAFFIC_LIGHTS_Display_Safe_Outp
                                           ; SOURCE LINE # 293
0003 22                RET     
             ; FUNCTION _?SCI_D_MASTER_Enter_Safe_State (END)

C51 COMPILER V6.10  SCI_DM                                                                 04/18/2001 16:48:12 PAGE 25  

NAME                                    CLASS   MSPACE  TYPE    OFFSET  SIZE
====                                    =====   ======  ====    ======  ====


Ack_message_data_G . . . . . . . . . .  PUBLIC   DATA   U_CHAR   0000H  1
LED_pin. . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      0090H  1
P0 . . . . . . . . . . . . . . . .

⌨️ 快捷键说明

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