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

📄 off

📁 在KEIL下成功使用UCOS-II嵌入式操作系统
💻
📖 第 1 页 / 共 2 页
字号:
   67 000000A0 E24DD00C        SUB     SP, SP, #4*3
   68 000000A4         
   69 000000A4 E321F09F        MSR     CPSR_c, #(NoInt | SYS32Mode) 
                                                   ; 切换到系统模式
   70 000000A8 E3510001        CMP     R1, #1
   71 000000AC 059FD050        LDREQ   SP, =StackUsr
   72 000000B0         
   73 000000B0 EBFFFFFE        BL      Timer0_Exception 
                                                   ; 调用c语言的中断处理程序
   74 000000B4         
   75 000000B4 E321F09F        MSR     CPSR_c, #(NoInt | SYS32Mode) 
                                                   ; 切换到系统模式
   76 000000B8 E59F2048        LDR     R2, =OsEnterSum ; OsEnterSum,使OSIntExit
                                                   退出时中断关闭
   77 000000BC E3A01001        MOV     R1, #1
   78 000000C0 E5821000        STR     R1, [R2]
   79 000000C4         
   80 000000C4 EBFFFFFE        BL      OSIntExit
   81 000000C8         
   82 000000C8 E59F2038        LDR     R2, =OsEnterSum ; 因为中断服务程序要退出
                                                   ,所以OsEnterSum=0
   83 000000CC E3A01000        MOV     R1, #0
   84 000000D0 E5821000        STR     R1, [R2]
   85 000000D4         
   86 000000D4 E321F092        MSR     CPSR_c, #(NoInt | IRQ32Mode) 
                                                   ; 切换回irq模式
   87 000000D8 E8DD6008        LDMFD   SP, {R3, SP, LR}^ ; 恢复用户状态的R3,SP,
                                                   LR,注意不能回写
   88 000000DC         ; 如果回写的是用户的SP,所以后面要调整SP
   89 000000DC E59F0028        LDR     R0, =OSTCBHighRdy
   90 000000E0 E5900000        LDR     R0, [R0]
   91 000000E4 E59F1024        LDR     R1, =OSTCBCur
   92 000000E8 E5911000        LDR     R1, [R1]
   93 000000EC E1500001        CMP     R0, R1
   94 000000F0         
   95 000000F0 E28DD00C        ADD     SP, SP, #4*3 ; 
   96 000000F4 E16FF003        MSR     SPSR_cxsf, R3
   97 000000F8 08FD900F        LDMEQFD SP!, {R0-R3, R12, PC}^ ; 不进行任务切换



ARM Macro Assembler    Page 6 


   98 000000FC E59FF010        LDR     PC, =OSIntCtxSw ; 进行任务切换
   45 00000100         
   46 00000100                 END
              00000000 
              00000000 
              00000000 
              00000000 
              00000000 
              00000000 
Command Line: [C:\Program Files\ARM\ADSv1_2\Bin\ArmAsm -via irq._ia]



ARM Macro Assembler    Page 1 Alphabetic symbol ordering
Relocatable symbols

IRQ 00000000

Symbol: IRQ
   Definitions
      At line 48 in file src\..\..\arm\irq.inc
   Uses
      None
Comment: IRQ unused
IRQ_Handler 00000000

Symbol: IRQ_Handler
   Definitions
      At line 56 in macro LER
      at line 39 in file src\IRQ.s
   Uses
      At line 53 in macro LER
      at line 39 in file src\IRQ.s
Comment: IRQ_Handler used once
Timer0_Handler 00000080

Symbol: Timer0_Handler
   Definitions
      At line 56 in macro LER
      at line 44 in file src\IRQ.s
   Uses
      At line 53 in macro LER
      at line 44 in file src\IRQ.s
Comment: Timer0_Handler used once
3 symbols



ARM Macro Assembler    Page 1 Alphabetic symbol ordering
Absolute symbols

FIQ32Mode 00000011

Symbol: FIQ32Mode
   Definitions
      At line 34 in file src\..\..\arm\irq.inc
   Uses
      None
Comment: FIQ32Mode unused
IRQ32Mode 00000012

Symbol: IRQ32Mode
   Definitions
      At line 33 in file src\..\..\arm\irq.inc
   Uses
      At line 86 in macro LER
      at line 39 in file src\IRQ.s
      At line 86 in macro LER
      at line 44 in file src\IRQ.s

NoInt 00000080

Symbol: NoInt
   Definitions
      At line 28 in file src\..\..\arm\irq.inc
   Uses
      At line 69 in macro LER
      at line 39 in file src\IRQ.s
      At line 75 in macro LER
      at line 39 in file src\IRQ.s
      At line 86 in macro LER
      at line 39 in file src\IRQ.s
      At line 69 in macro LER
      at line 44 in file src\IRQ.s
      At line 75 in macro LER
      at line 44 in file src\IRQ.s
      At line 86 in macro LER
      at line 44 in file src\IRQ.s

SVC32Mode 00000013

Symbol: SVC32Mode
   Definitions
      At line 31 in file src\..\..\arm\irq.inc
   Uses
      None
Comment: SVC32Mode unused
SYS32Mode 0000001F

Symbol: SYS32Mode
   Definitions
      At line 32 in file src\..\..\arm\irq.inc
   Uses
      At line 69 in macro LER
      at line 39 in file src\IRQ.s
      At line 75 in macro LER
      at line 39 in file src\IRQ.s
      At line 69 in macro LER
      at line 44 in file src\IRQ.s
      At line 75 in macro LER



ARM Macro Assembler    Page 2 Alphabetic symbol ordering
Absolute symbols

      at line 44 in file src\IRQ.s

USR32Mode 00000010

Symbol: USR32Mode
   Definitions
      At line 30 in file src\..\..\arm\irq.inc
   Uses
      None
Comment: USR32Mode unused
6 symbols



ARM Macro Assembler    Page 1 Alphabetic symbol ordering
External symbols

IRQ_Exception 00000000

Symbol: IRQ_Exception
   Definitions
      At line 54 in macro LER
      at line 39 in file src\IRQ.s
   Uses
      At line 73 in macro LER
      at line 39 in file src\IRQ.s
Comment: IRQ_Exception used once
OSIntCtxSw 00000000

Symbol: OSIntCtxSw
   Definitions
      At line 38 in file src\..\..\arm\irq.inc
   Uses
      At line 98 in macro LER
      at line 39 in file src\IRQ.s
      At line 98 in macro LER
      at line 44 in file src\IRQ.s

OSIntExit 00000000

Symbol: OSIntExit
   Definitions
      At line 39 in file src\..\..\arm\irq.inc
   Uses
      At line 80 in macro LER
      at line 39 in file src\IRQ.s
      At line 80 in macro LER
      at line 44 in file src\IRQ.s

OSIntNesting 00000000

Symbol: OSIntNesting
   Definitions
      At line 42 in file src\..\..\arm\irq.inc
   Uses
      At line 62 in macro LER
      at line 39 in file src\IRQ.s
      At line 62 in macro LER
      at line 44 in file src\IRQ.s

OSTCBCur 00000000

Symbol: OSTCBCur
   Definitions
      At line 40 in file src\..\..\arm\irq.inc
   Uses
      At line 91 in macro LER
      at line 39 in file src\IRQ.s
      At line 91 in macro LER
      at line 44 in file src\IRQ.s

OSTCBHighRdy 00000000

Symbol: OSTCBHighRdy
   Definitions
      At line 41 in file src\..\..\arm\irq.inc



ARM Macro Assembler    Page 2 Alphabetic symbol ordering
External symbols

   Uses
      At line 89 in macro LER
      at line 39 in file src\IRQ.s
      At line 89 in macro LER
      at line 44 in file src\IRQ.s

OsEnterSum 00000000

Symbol: OsEnterSum
   Definitions
      At line 44 in file src\..\..\arm\irq.inc
   Uses
      At line 76 in macro LER
      at line 39 in file src\IRQ.s
      At line 82 in macro LER
      at line 39 in file src\IRQ.s
      At line 76 in macro LER
      at line 44 in file src\IRQ.s
      At line 82 in macro LER
      at line 44 in file src\IRQ.s

StackUsr 00000000

Symbol: StackUsr
   Definitions
      At line 43 in file src\..\..\arm\irq.inc
   Uses
      At line 71 in macro LER
      at line 39 in file src\IRQ.s
      At line 71 in macro LER
      at line 44 in file src\IRQ.s

Timer0_Exception 00000000

Symbol: Timer0_Exception
   Definitions
      At line 54 in macro LER
      at line 44 in file src\IRQ.s
   Uses
      At line 73 in macro LER
      at line 44 in file src\IRQ.s
Comment: Timer0_Exception used once
9 symbols
271 symbols in table

⌨️ 快捷键说明

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