📄 main.s79
字号:
//////////////////////////////////////////////////////////////////////////////
// /
// IAR ARM ANSI C/C++ Compiler V4.40A/W32 EVALUATION 21/Jul/2006 17:04:02 /
// Copyright 1999-2005 IAR Systems. All rights reserved. /
// Time limited license: 22 days left /
// /
// Cpu mode = interwork /
// Endian = little /
// Stack alignment = 4 /
// Source file = E:\Project\ucos-ii\leddisp\App\main.C /
// Command line = E:\Project\ucos-ii\leddisp\App\main.C -lCN /
// E:\Project\ucos-ii\leddisp\Debug\List\ -lA /
// E:\Project\ucos-ii\leddisp\Debug\List\ -o /
// E:\Project\ucos-ii\leddisp\Debug\Obj\ -s9 --no_cse /
// --no_unroll --no_inline --no_code_motion --no_tbaa /
// --no_clustering --no_scheduling --debug --cpu_mode /
// thumb --endian little --cpu ARM7TDMI-S /
// --stack_align 4 --interwork -e --fpu None /
// --dlib_config "e:\Program Files\IAR /
// Systems\Embedded Workbench 4.0 /
// Evaluation\ARM\LIB\dl4tptinl8n.h" -I /
// E:\Project\ucos-ii\leddisp\ -I /
// E:\Project\ucos-ii\leddisp\App\ -I /
// E:\Project\ucos-ii\leddisp\ARM\ -I /
// E:\Project\ucos-ii\leddisp\BSP\ -I /
// E:\Project\ucos-ii\leddisp\uCOS-II\ -I "e:\Program /
// Files\IAR Systems\Embedded Workbench 4.0 /
// Evaluation\ARM\INC\" /
// List file = E:\Project\ucos-ii\leddisp\Debug\List\main.s79 /
// /
// /
//////////////////////////////////////////////////////////////////////////////
NAME main
RTMODEL "StackAlign4", "USED"
RTMODEL "__cpu_mode", "__pcs__interwork"
RTMODEL "__data_model", "absolute"
RTMODEL "__dlib_file_descriptor", "0"
RTMODEL "__endian", "little"
RTMODEL "__rt_version", "6"
RSEG CSTACK:DATA:NOROOT(2)
MULTWEAK ??BSP_Init??rT
MULTWEAK ??LED_Off??rT
MULTWEAK ??LED_On??rT
MULTWEAK ??Main_Task??rA
MULTWEAK ??OSInit??rT
MULTWEAK ??OSStart??rT
MULTWEAK ??OSTaskCreate??rT
MULTWEAK ??OSTimeDlyHMSM??rT
MULTWEAK ??main??rA
PUBWEAK ?init?tab?DATA_Z
PUBLIC Main_Task
FUNCTION Main_Task,0603H
LOCFRAME CSTACK, 8, STACK
PUBLIC Main_TaskStk
PUBLIC main
FUNCTION main,0a03H
LOCFRAME CSTACK, 4, STACK
CFI Names cfiNames0
CFI StackFrame CFA R13 HUGEDATA
CFI Resource R0:32, R1:32, R2:32, R3:32, R4:32, R5:32, R6:32, R7:32
CFI Resource R8:32, R9:32, R10:32, R11:32, R12:32, CPSR:32, R13:32
CFI Resource R14:32, SPSR:32
CFI VirtualResource ?RET:32
CFI EndNames cfiNames0
CFI Common cfiCommon0 Using cfiNames0
CFI CodeAlign 4
CFI DataAlign 4
CFI ReturnAddress ?RET CODE
CFI CFA R13+0
CFI R0 Undefined
CFI R1 Undefined
CFI R2 Undefined
CFI R3 Undefined
CFI R4 SameValue
CFI R5 SameValue
CFI R6 SameValue
CFI R7 SameValue
CFI R8 SameValue
CFI R9 SameValue
CFI R10 SameValue
CFI R11 SameValue
CFI R12 Undefined
CFI CPSR SameValue
CFI R14 Undefined
CFI SPSR SameValue
CFI ?RET R14
CFI EndCommon cfiCommon0
CFI Common cfiCommon1 Using cfiNames0
CFI CodeAlign 2
CFI DataAlign 4
CFI ReturnAddress ?RET CODE
CFI CFA R13+0
CFI R0 Undefined
CFI R1 Undefined
CFI R2 Undefined
CFI R3 Undefined
CFI R4 SameValue
CFI R5 SameValue
CFI R6 SameValue
CFI R7 SameValue
CFI R8 SameValue
CFI R9 SameValue
CFI R10 SameValue
CFI R11 SameValue
CFI R12 Undefined
CFI CPSR SameValue
CFI R14 Undefined
CFI SPSR SameValue
CFI ?RET R14
CFI EndCommon cfiCommon1
BSP_Init SYMBOL "BSP_Init"
LED_Off SYMBOL "LED_Off"
LED_On SYMBOL "LED_On"
OSInit SYMBOL "OSInit"
OSStart SYMBOL "OSStart"
OSTaskCreate SYMBOL "OSTaskCreate"
OSTimeDlyHMSM SYMBOL "OSTimeDlyHMSM"
??BSP_Init??rT SYMBOL "??rT", BSP_Init
??LED_Off??rT SYMBOL "??rT", LED_Off
??LED_On??rT SYMBOL "??rT", LED_On
Main_Task SYMBOL "Main_Task"
??Main_Task??rA SYMBOL "??rA", Main_Task
??OSInit??rT SYMBOL "??rT", OSInit
??OSStart??rT SYMBOL "??rT", OSStart
??OSTaskCreate??rT SYMBOL "??rT", OSTaskCreate
??OSTimeDlyHMSM??rT SYMBOL "??rT", OSTimeDlyHMSM
main SYMBOL "main"
??main??rA SYMBOL "??rA", main
EXTERN BSP_Init
FUNCTION BSP_Init,0202H
EXTERN LED_Off
FUNCTION LED_Off,0202H
EXTERN LED_On
FUNCTION LED_On,0202H
EXTERN OSInit
FUNCTION OSInit,0202H
EXTERN OSStart
FUNCTION OSStart,0202H
EXTERN OSTaskCreate
FUNCTION OSTaskCreate,0202H
EXTERN OSTimeDlyHMSM
FUNCTION OSTimeDlyHMSM,0202H
// E:\Project\ucos-ii\leddisp\App\main.C
// 1
// 2 /********************************************************************************************************/
// 3
// 4 #include <includes.h>
// 5
// 6 #define TASK_STK_SIZE 64
RSEG DATA_Z:DATA:SORT:NOROOT(2)
// 7 OS_STK Main_TaskStk[TASK_STK_SIZE];
Main_TaskStk:
DS8 256
RSEG CODE:CODE:NOROOT(2)
CFI Block cfiBlock0 Using cfiCommon0
CFI NoFunction
ARM
??main??rA:
ADD R12,PC,#+1
BX R12
CFI EndBlock cfiBlock0
REQUIRE main
// 8 void Main_Task(void *data);
// 9 /*******************************************************************************
// 10 * 函数名称: main
// 11 * 功能描述: c语言的主函数,由它启动多任务环境
// 12 *******************************************************************************/
RSEG CODE:CODE:NOROOT(2)
CFI Block cfiBlock1 Using cfiCommon1
CFI Function main
THUMB
// 13 int main (void)
// 14 {
main:
PUSH {LR}
CFI ?RET Frame(CFA, -4)
CFI CFA R13+4
// 15 OSInit();
_BLF OSInit,??OSInit??rT
// 16 OSTaskCreate(Main_Task, (void *)0, &Main_TaskStk[TASK_STK_SIZE - 1], 0);
MOVS R3,#+0
LDR R2,??main_0 ;; Main_TaskStk + 252
MOVS R1,#+0
LDR R0,??main_0+0x4 ;; Main_Task
_BLF OSTaskCreate,??OSTaskCreate??rT
// 17 OSStart();
_BLF OSStart,??OSStart??rT
// 18 }
MOVS R0,#+0
POP {R1}
BX R1 ;; return
DATA
??main_0:
DC32 Main_TaskStk + 252
DC32 Main_Task
CFI EndBlock cfiBlock1
RSEG CODE:CODE:NOROOT(2)
CFI Block cfiBlock2 Using cfiCommon0
CFI NoFunction
ARM
??Main_Task??rA:
ADD R12,PC,#+1
BX R12
CFI EndBlock cfiBlock2
REQUIRE Main_Task
// 19 /*******************************************************************************
// 20 * 函数名称: Main_Task
// 21 * 功能描述: μCOS-II的第一个任务,通常由它初始化目标板和建立其它任务
// 22 *******************************************************************************/
RSEG CODE:CODE:NOROOT(2)
CFI Block cfiBlock3 Using cfiCommon1
CFI Function Main_Task
THUMB
// 23 void Main_Task(void *p_arg)
// 24 { int i;
Main_Task:
PUSH {R4,LR}
CFI ?RET Frame(CFA, -4)
CFI R4 Frame(CFA, -8)
CFI CFA R13+8
// 25 p_arg = p_arg; /* 避免编译警告 */
// 26 BSP_Init();
_BLF BSP_Init,??BSP_Init??rT
// 27 LED_Off(0);
MOVS R0,#+0
_BLF LED_Off,??LED_Off??rT
// 28 while (TRUE){
// 29 for (i = 1; i <= 16; i++) {
??Main_Task_0:
MOVS R4,#+1
// 30 LED_On(i);
??Main_Task_1:
LSLS R0,R4,#+24
LSRS R0,R0,#+24
_BLF LED_On,??LED_On??rT
// 31 OSTimeDlyHMSM(0, 0, 0, 50);
MOVS R3,#+50
MOVS R2,#+0
MOVS R1,#+0
MOVS R0,R1
_BLF OSTimeDlyHMSM,??OSTimeDlyHMSM??rT
// 32 LED_Off(i);
LSLS R0,R4,#+24
LSRS R0,R0,#+24
_BLF LED_Off,??LED_Off??rT
// 33 }
ADDS R4,R4,#+1
CMP R4,#+17
BLT ??Main_Task_1
// 34 for (i = 1; i <= 16; i++) {
MOVS R4,#+1
// 35 LED_On(17 - i);
??Main_Task_2:
MOVS R0,#+17
SUBS R0,R0,R4
LSLS R0,R0,#+24
LSRS R0,R0,#+24
_BLF LED_On,??LED_On??rT
// 36 OSTimeDlyHMSM(0, 0, 0, 50);
MOVS R3,#+50
MOVS R2,#+0
MOVS R1,#+0
MOVS R0,R1
_BLF OSTimeDlyHMSM,??OSTimeDlyHMSM??rT
// 37 LED_Off(17 - i);
MOVS R0,#+17
SUBS R0,R0,R4
LSLS R0,R0,#+24
LSRS R0,R0,#+24
_BLF LED_Off,??LED_Off??rT
// 38 }
ADDS R4,R4,#+1
CMP R4,#+17
BGE ??Main_Task_0
B ??Main_Task_2
CFI EndBlock cfiBlock3
// 39 }
// 40 }
RSEG CODE:CODE:NOROOT(2)
CFI Block cfiBlock4 Using cfiCommon1
CFI NoFunction
THUMB
??OSInit??rT:
LDR R3,??Subroutine2_0 ;; OSInit
BX R3
DATA
??Subroutine2_0:
DC32 OSInit
CFI EndBlock cfiBlock4
RSEG CODE:CODE:NOROOT(2)
CFI Block cfiBlock5 Using cfiCommon1
CFI NoFunction
THUMB
??OSTaskCreate??rT:
PUSH {R3}
CFI CFA R13+4
LDR R3,??Subroutine3_0 ;; OSTaskCreate
MOV R12,R3
POP {R3}
CFI CFA R13+0
BX R12
Nop
DATA
??Subroutine3_0:
DC32 OSTaskCreate
CFI EndBlock cfiBlock5
RSEG CODE:CODE:NOROOT(2)
CFI Block cfiBlock6 Using cfiCommon1
CFI NoFunction
THUMB
??OSStart??rT:
LDR R3,??Subroutine4_0 ;; OSStart
BX R3
DATA
??Subroutine4_0:
DC32 OSStart
CFI EndBlock cfiBlock6
RSEG CODE:CODE:NOROOT(2)
CFI Block cfiBlock7 Using cfiCommon1
CFI NoFunction
THUMB
??BSP_Init??rT:
LDR R3,??Subroutine5_0 ;; BSP_Init
BX R3
DATA
??Subroutine5_0:
DC32 BSP_Init
CFI EndBlock cfiBlock7
RSEG CODE:CODE:NOROOT(2)
CFI Block cfiBlock8 Using cfiCommon1
CFI NoFunction
THUMB
??LED_Off??rT:
LDR R3,??Subroutine6_0 ;; LED_Off
BX R3
DATA
??Subroutine6_0:
DC32 LED_Off
CFI EndBlock cfiBlock8
RSEG CODE:CODE:NOROOT(2)
CFI Block cfiBlock9 Using cfiCommon1
CFI NoFunction
THUMB
??LED_On??rT:
LDR R3,??Subroutine7_0 ;; LED_On
BX R3
DATA
??Subroutine7_0:
DC32 LED_On
CFI EndBlock cfiBlock9
RSEG CODE:CODE:NOROOT(2)
CFI Block cfiBlock10 Using cfiCommon1
CFI NoFunction
THUMB
??OSTimeDlyHMSM??rT:
PUSH {R3}
CFI CFA R13+4
LDR R3,??Subroutine8_0 ;; OSTimeDlyHMSM
MOV R12,R3
POP {R3}
CFI CFA R13+0
BX R12
Nop
DATA
??Subroutine8_0:
DC32 OSTimeDlyHMSM
CFI EndBlock cfiBlock10
RSEG INITTAB:CODE:ROOT(2)
DATA
?init?tab?DATA_Z:
DCD sfe(DATA_Z) - sfb(DATA_Z), sfb(DATA_Z), sfb(DATA_Z)
END
// 41 /**********************************End Of File***********************************/
//
// 218 bytes in segment CODE
// 256 bytes in segment DATA_Z
// 12 bytes in segment INITTAB
//
// 130 bytes of CODE memory (+ 100 bytes shared)
// 256 bytes of DATA memory
//
//Errors: none
//Warnings: none
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -