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

📄 isd51.lst

📁 利用NRF9e5芯片编写的C51源代码
💻 LST
📖 第 1 页 / 共 5 页
字号:
                     479     
                     480                     SET_TI
0012 75D000          482                     MOV     PSW,#0          ; Select Register Bank 0
0015 C000            483                     PUSH    AR0
0017 C001            484                     PUSH    AR1
0019 8010            485                     SJMP    SoftBreak
                     486     
001B 74FF            487     NoSerBreak:     MOV     A,#0FFH
001D 75D000          488     CallBreak:      MOV     PSW,#0          ; Select Register Bank 0
0020 C000            489                     PUSH    AR0
0022 C001            490                     PUSH    AR1
0024 78FF            491                     MOV     R0,#?ISD?RAMTOP
                     492     
0026 8600            493                     MOV     AR0,@R0         ; Load Start Address of Break Table
0028 B8FF29          494                     CJNE    R0,#0xFF,CheckBreaks
                             
                                             
                                             
                             
                             
                             
                                             
                                             
                                             
                             
                             
                                             
                                             
                             
                     509     ; Called when a Breakpoint is reached or in Single Stepping Mode
                     510     
                     511     ; Sends Break-Idenfier, R0, ACC, PSW, PCH, PCL, R1
                     512     
002B 74F7            513     SoftBreak:      MOV     A,#0F7H         ; Send Idenifier
                     514     
002D                 515     Send7Bytes:     SBYTE                   ; Send Byte
                     516+1            JNB_TI $
                     518+1            CLR_TI
                     520+1            WR_SBUF           ; MOV SBUF,A
0034 D001            522                     POP     AR1
0036 7805            523                     MOV     R0,#5
0038 D0E0            524     SendStackFrame: POP     ACC
003A 1100     F      525                     ACALL   ?ISD?SENDBYTE
003C D8FA            526                     DJNZ    R0,SendStackFrame
003E E9              527                     MOV     A,R1
A51 MACRO ASSEMBLER  ISD51                                                                09/27/2006 15:13:06 PAGE     9

003F 1100     F      528     ?ISD?CMDLOOP2:  ACALL   ?ISD?SENDBYTE
                     529     
                     530     ; Wait for Command
                     531     ;  CmdAddrL, CmdAddrH, R0, ACC
                     532     
0041 1100     F      533     ?ISD?CMDLOOP:   ACALL   ?ISD?GETBYTE            ; Command Address
0043 C0E0            534                     PUSH    ACC
0045 1100     F      535                     ACALL   ?ISD?GETBYTE
0047 C0E0            536                     PUSH    ACC
0049 1100     F      537                     ACALL   ?ISD?GETBYTE
004B F8              538                     MOV     R0,A
                     539     ;;;             ACALL   ?ISD?GETBYTE
                     540     ;;;             RET
                     541     
004C                 542     ?ISD?GETBYTE:   GBYTE
                     543+1            JNB_RI $
                     545+1            RBYTE
0053 22              550                     RET
                     551     
                     552     
                     553     ; Check Soft Breaks in Memory
0054 E581            554     CheckBreaks:    MOV     A,SP
0056 24FC            555                     ADD     A,#-4
0058 F9              556                     MOV     R1,A            ; Address to PCH/PCL
0059 800C            557                     SJMP    CheckBreak1
005B 08              558     CheckBreak:     INC     R0
005C 19              559                     DEC     R1
005D E6              560                     MOV     A,@R0           ; Compare Low Part
005E 67              561                     XRL     A,@R1
005F 08              562                     INC     R0
0060 09              563                     INC     R1
0061 7004            564                     JNZ     CheckBreak1
0063 E6              565                     MOV     A,@R0           ; Compare High Part
0064 67              566                     XRL     A,@R1
0065 60C4            567                     JZ      SoftBreak
0067 B8FEF1          568     CheckBreak1:    CJNE    R0,#?ISD?RAMTOP-1,CheckBreak
                     569     
006A D001            570                     POP     AR1
006C D000            571     RestartUser:    POP     AR0
                     572     
                     573     
006E D0E0            574     ReturnI:        POP     ACC
0070 D0D0            575                     POP     PSW
0072 32              576                     RETI
                     577     
                     578     
                     579     
0073                 580     ?ISD?SENDBYTE:  SBYTE
                     581+1            JNB_TI $
                     583+1            CLR_TI
                     585+1            WR_SBUF           ; MOV SBUF,A
007A 22              587                     RET
                     588     
                     589     ;--------------------------------------------------------------------------
                     590     ; Command: Restart User Program
                     591     ;  LOW (?ISD?RESTART), HIGH (?ISD?RESTART), R0, PCL, PCH, PSW, R1, ACC
                     592     ;
                     593     ;
007B C0E0            594     ?ISD?RESTART:   PUSH    ACC          ; PCL Content of User Program
007D 1100     F      595                     ACALL   ?ISD?GETBYTE
007F C0E0            596                     PUSH    ACC          ; PCH Content of User Program
0081 1100     F      597                     ACALL   ?ISD?GETBYTE
0083 C0E0            598                     PUSH    ACC          ; PSW Content of User Program
0085 1100     F      599                     ACALL   ?ISD?GETBYTE
0087 F9              600                     MOV     R1,A         ; R1  Content of User Program
0088 1100     F      601                     ACALL   ?ISD?GETBYTE ; ACC Content of User Program
A51 MACRO ASSEMBLER  ISD51                                                                09/27/2006 15:13:06 PAGE    10

008A C0E0            602                     PUSH    ACC
008C C000            603                     PUSH    AR0
008E 78FF            604                     MOV     R0,#?ISD?RAMTOP
0090 E6              605                     MOV     A,@R0
                     606     
                                             
                                             
                                             
                                             
                                             
                             
                             
                                             
                                             
                                             
                                             
                                             
                                             
                                             
                                             
                             
                                             
                                             
                                             
                                             
                                             
                                             
                                             
                             
                             
                                             
                                             
                                             
                                             
                                             
                             
                             
                                             
                                             
                                             
                                             
                                             
                             
                             
                             
                                             
                                             
                                             
                                             
                                             
                             
                             
                                             
                             
0091 7002            656                     JNZ     RestartSS
                     657                     CLR_TI
0095 0100     F      659     RestartSS:      AJMP    RestartUser
                     660     
                     661     
                     662     ;--------------------------------------------------------------------------;
                     663     ; Insert HW Breakpoints
                     664     
                             
                             
                             
                             
A51 MACRO ASSEMBLER  ISD51                                                                09/27/2006 15:13:06 PAGE    11

                             
                             
                                             
                                             
                                             
                                             
                             
                             
                             
                             
                             
                             
                             
                                             
                             
                             
                     685     ;--------------------------------------------------------------------------
                     686     ; Command: Write SFR DPL, DPH
                     687     ;  LOW (?ISD?WRITESFR00), HIGH (?ISD?WRITESFR00), DPL, DPH
                     688     ;
                     689     ;
0097                 690     ?ISD?WRITESFR00:
0097 8882            691                     MOV     DPL,R0
0099 F583            692                     MOV     DPH,A
009B 0100     F      693                     AJMP    ?ISD?CMDLOOP
                     694     
                     695     ;--------------------------------------------------------------------------
                     696     ; Command: Write SFR SP, B
                     697     ;  LOW (?ISD?WRITESFR01), HIGH (?ISD?WRITESFR01), SP, B
                     698     ;
009D                 699     ?ISD?WRITESFR01:
009D 8881            700                     MOV     SP,R0
009F F5F0            701                     MOV     B,A
00A1 0100     F      702                     AJMP    ?ISD?CMDLOOP
                     703     
                     704     ;--------------------------------------------------------------------------
                     705     ; Command: Write SFR02:  P0
                     706     ;  LOW (?ISD?WRITESFR02), HIGH (?ISD?WRITESFR02), dummy, P0
                     707     ;
00A3                 708     ?ISD?WRITESFR02:
00A3 F580            709                     MOV     P0,A
00A5 0100     F      710                     AJMP    ?ISD?CMDLOOP
                     711     
                     712     ;--------------------------------------------------------------------------
                     713     ; Command: Write SFR03:  P3
                     714     ;  LOW (?ISD?WRITESFR03), HIGH (?ISD?WRITESFR03), dummy, P3
                     715     ;
00A7                 716     ?ISD?WRITESFR03:
00A7 F5B0            717                     MOV     P3,A
00A9 0100     F      718                     AJMP    ?ISD?CMDLOOP
                     719     
                     720     
                             
                             
                             
                             
                             
                                             
                                             
                             
                             
                             
                             
                             
                             
                                             

⌨️ 快捷键说明

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