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

📄 main.s79

📁 ARM仿真案例
💻 S79
📖 第 1 页 / 共 2 页
字号:
//////////////////////////////////////////////////////////////////////////////
//                                                                           /
// IAR ARM ANSI C/C++ Compiler V4.40A/W32 EVALUATION   21/Jul/2006  17:47:26 /
// 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\counter\App\main.c               /
//    Command line    =  E:\Project\ucos-ii\counter\App\main.c -lCN          /
//                       E:\Project\ucos-ii\counter\Debug\List\ -lA          /
//                       E:\Project\ucos-ii\counter\Debug\List\ -o           /
//                       E:\Project\ucos-ii\counter\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\counter\ -I                      /
//                       E:\Project\ucos-ii\counter\App\ -I                  /
//                       E:\Project\ucos-ii\counter\BSP\ -I                  /
//                       E:\Project\ucos-ii\counter\ARM\ -I                  /
//                       E:\Project\ucos-ii\counter\uCOS-II\ -I "E:\Program  /
//                       Files\IAR Systems\Embedded Workbench 4.0            /
//                       Evaluation\ARM\INC\"                                /
//    List file       =  E:\Project\ucos-ii\counter\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
??DataTable0 EQU 0
        MULTWEAK ??Main_Task??rA
        MULTWEAK ??OSInit??rT
        MULTWEAK ??OSStart??rT
        MULTWEAK ??OSTaskCreate??rT
        MULTWEAK ??OSTaskSuspend??rT
        MULTWEAK ??OSTimeDly??rT
        MULTWEAK ??Task0??rA
        MULTWEAK ??main??rA
        PUBWEAK ?init?tab?DATA_Z
        PUBLIC Main_Task
        FUNCTION Main_Task,0603H
        LOCFRAME CSTACK, 4, STACK
        PUBLIC Main_TaskStk
        PUBLIC Task0
        FUNCTION Task0,0603H
        LOCFRAME CSTACK, 8, STACK
        PUBLIC Task0Stk
        PUBWEAK _A_IOCLR
        PUBWEAK _A_IODIR
        PUBWEAK _A_IOPIN
        PUBWEAK _A_IOSET
        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"
OSInit              SYMBOL "OSInit"
OSStart             SYMBOL "OSStart"
OSTaskCreate        SYMBOL "OSTaskCreate"
OSTaskSuspend       SYMBOL "OSTaskSuspend"
OSTimeDly           SYMBOL "OSTimeDly"
??BSP_Init??rT      SYMBOL "??rT", BSP_Init
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
??OSTaskSuspend??rT SYMBOL "??rT", OSTaskSuspend
??OSTimeDly??rT     SYMBOL "??rT", OSTimeDly
Task0               SYMBOL "Task0"
??Task0??rA         SYMBOL "??rA", Task0
main                SYMBOL "main"
??main??rA          SYMBOL "??rA", main

        EXTERN BSP_Init
        FUNCTION BSP_Init,0202H
        EXTERN OSInit
        FUNCTION OSInit,0202H
        EXTERN OSStart
        FUNCTION OSStart,0202H
        EXTERN OSTaskCreate
        FUNCTION OSTaskCreate,0202H
        EXTERN OSTaskSuspend
        FUNCTION OSTaskSuspend,0202H
        EXTERN OSTimeDly
        FUNCTION OSTimeDly,0202H

// E:\Project\ucos-ii\counter\App\main.c
//    1 /****************************************************************************
//    2 * File:Main.C
//    3 * 功能:计数器,通过两个按键来控制加减计数器,并输出数码管显示.。
//    4 ****************************************************************************/
//    5 #include <includes.h>

        ASEGN DATA_AN:DATA:NOROOT,0e0028000H
// union <unnamed> const volatile __data _A_IOPIN
_A_IOPIN:
        DS8 4

        ASEGN DATA_AN:DATA:NOROOT,0e0028004H
// union <unnamed> volatile __data _A_IOSET
_A_IOSET:
        DS8 4

        ASEGN DATA_AN:DATA:NOROOT,0e0028008H
// union <unnamed> volatile __data _A_IODIR
_A_IODIR:
        DS8 4

        ASEGN DATA_AN:DATA:NOROOT,0e002800cH
// union <unnamed> volatile __data _A_IOCLR
_A_IOCLR:
        DS8 4
//    6 
//    7 #define CON 0x000000ff    //控制P0.0~P0.7
//    8 
//    9 #define  TASK_STK_SIZE                  64

        RSEG DATA_Z:DATA:SORT:NOROOT(2)
//   10 OS_STK        Main_TaskStk[TASK_STK_SIZE];
Main_TaskStk:
        DS8 256

        RSEG DATA_Z:DATA:SORT:NOROOT(2)
//   11 OS_STK        Task0Stk[TASK_STK_SIZE];
Task0Stk:
        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
//   12 
//   13 void  Main_Task(void *data);
//   14 void  Task0(void *data);
//   15 /****************************************************************************
//   16 * 名称:main()
//   17 * 功能:主函数,启动多任务环境
//   18 ****************************************************************************/

        RSEG CODE:CODE:NOROOT(2)
        CFI Block cfiBlock1 Using cfiCommon1
        CFI Function main
        THUMB
//   19  int main (void)
//   20 {
main:
        PUSH     {LR}
        CFI ?RET Frame(CFA, -4)
        CFI CFA R13+4
//   21     OSInit();
        _BLF     OSInit,??OSInit??rT
//   22 
//   23     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
//   24     OSStart();
        _BLF     OSStart,??OSStart??rT
//   25 }
        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
//   26 /****************************************************************************
//   27 * 名称:Main_Task()
//   28 * 功能:初始化目标板,建立其他任务

⌨️ 快捷键说明

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