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

📄 app.lis

📁 将本站的UCOSFORAVR128V276版本升级到了280版
💻 LIS
📖 第 1 页 / 共 3 页
字号:
 00E4           _AppTaskCreate:
 00E4 2397              sbiw R28,3
 00E6                   .dbline -1
 00E6                   .dbline 155
 00E6           ;     
 00E6           ;       //OSTaskSuspend(5);
 00E6           ;     //OSTaskDel(4);
 00E6           ;     while (TRUE) {                               /* Task body, always written as an infinite loop.     */
 00E6           ;         LED_Toggle(1);
 00E6           ;         OSTimeDly(OS_TICKS_PER_SEC / 50);   //10
 00E6           ;               
 00E6           ;     }
 00E6           ; }
 00E6           ; 
 00E6           ; 
 00E6           ; /*
 00E6           ; *********************************************************************************************************
 00E6           ; *                                    CREATE APPLICATION TASKS
 00E6           ; *
 00E6           ; * Description : This function creates the application tasks.
 00E6           ; *
 00E6           ; * Arguments   : p_arg   is the argument passed to 'AppStartTask()' by 'OSTaskCreate()'.
 00E6           ; *
 00E6           ; * Notes       : 1) The first line of code is used to prevent a compiler warning because 'p_arg' is not
 00E6           ; *                  used.  The compiler should not generate any code for this statement.
 00E6           ; *********************************************************************************************************
 00E6           ; */
 00E6           ; 
 00E6           ; static  void  AppTaskCreate (void)
 00E6           ; {
 00E6                   .dbline 157
 00E6           ;     /*---- Task initialization code goes HERE! --------------------------------------------------------*/
 00E6           ;     OSTaskStkSize     = OS_TASK_1_STK_SIZE;        /* Setup the default stack size                     */
 00E6 80E0              ldi R24,256
 00E8 91E0              ldi R25,1
 00EA 90930100          sts _OSTaskStkSize+1,R25
 00EE 80930000          sts _OSTaskStkSize,R24
 00F2                   .dbline 158
 00F2           ;     OSTaskHardStkSize = OS_TASK_1_HARD_STK_SIZE;   /* Setup the default hardware stack size            */
 00F2 80E4              ldi R24,64
 00F4 90E0              ldi R25,0
 00F6 90930100          sts _OSTaskHardStkSize+1,R25
 00FA 80930000          sts _OSTaskHardStkSize,R24
 00FE                   .dbline 159
 00FE           ;     OSTaskCreate(AppTask1, (void *)0, (OS_STK *)&AppTask1Stk[OSTaskStkSize - 1], 5);
 00FE 85E0              ldi R24,5
 0100 8A83              std y+2,R24
 0102 80E0              ldi R24,<_AppTask1Stk
 0104 90E0              ldi R25,>_AppTask1Stk
 0106 E0910000          lds R30,_OSTaskStkSize
 010A F0910100          lds R31,_OSTaskStkSize+1
 010E 3197              sbiw R30,1
 0110 E80F              add R30,R24
 0112 F91F              adc R31,R25
 0114 F983              std y+1,R31
 0116 E883              std y+0,R30
 0118 2227              clr R18
 011A 3327              clr R19
 011C 00E0              ldi R16,<PL_AppTask1
 011E 10E0              ldi R17,>PL_AppTask1
 0120 0E940000          xcall _OSTaskCreate
 0124                   .dbline 161
 0124           ; 
 0124           ;     OSTaskStkSize     = OS_TASK_2_STK_SIZE;        /* Setup the default stack size                     */
 0124 80E0              ldi R24,256
 0126 91E0              ldi R25,1
 0128 90930100          sts _OSTaskStkSize+1,R25
 012C 80930000          sts _OSTaskStkSize,R24
 0130                   .dbline 162
 0130           ;     OSTaskHardStkSize = OS_TASK_2_HARD_STK_SIZE;   /* Setup the default hardware stack size            */
 0130 80E4              ldi R24,64
 0132 90E0              ldi R25,0
 0134 90930100          sts _OSTaskHardStkSize+1,R25
 0138 80930000          sts _OSTaskHardStkSize,R24
 013C                   .dbline 163
 013C           ;     OSTaskCreate(AppTask2, (void *)0, (OS_STK *)&AppTask2Stk[OSTaskStkSize - 1], 6);
 013C 86E0              ldi R24,6
 013E 8A83              std y+2,R24
 0140 80E0              ldi R24,<_AppTask2Stk
 0142 90E0              ldi R25,>_AppTask2Stk
 0144 E0910000          lds R30,_OSTaskStkSize
 0148 F0910100          lds R31,_OSTaskStkSize+1
 014C 3197              sbiw R30,1
 014E E80F              add R30,R24
 0150 F91F              adc R31,R25
 0152 F983              std y+1,R31
 0154 E883              std y+0,R30
 0156 2227              clr R18
 0158 3327              clr R19
 015A 00E0              ldi R16,<PL_AppTask2
 015C 10E0              ldi R17,>PL_AppTask2
 015E 0E940000          xcall _OSTaskCreate
 0162                   .dbline -2
 0162           L6:
 0162 2396              adiw R28,3
 0164                   .dbline 0 ; func end
 0164 0895              ret
 0166                   .dbend
 0166                   .dbfunc s AppTask1 _AppTask1 fV
 0166           ;            err -> y+2
 0166           ;          p_arg -> R20,R21
                        .even
 0166           _AppTask1:
 0166 0E940000          xcall push_gset1
 016A A801              movw R20,R16
 016C 2397              sbiw R28,3
 016E                   .dbline -1
 016E                   .dbline 173
 016E           ; }
 016E           ; 
 016E           ; /*
 016E           ; *********************************************************************************************************
 016E           ; *                                              TASK #1
 016E           ; *********************************************************************************************************
 016E           ; */
 016E           ; 
 016E           ; static void  AppTask1(void *p_arg)
 016E           ; {
 016E                   .dbline 175
 016E           ;  INT8U  err;
 016E           ;     p_arg = p_arg;
 016E 1AC0              xjmp L9
 0170           L8:
 0170                   .dbline 179
 0170                   .dbline 180
 0170 02E0              ldi R16,2
 0172 5FD0              xcall _LED_Toggle
 0174                   .dbline 182
 0174 CE01              movw R24,R28
 0176 0296              adiw R24,2
 0178 9983              std y+1,R25
 017A 8883              std y+0,R24
 017C 2227              clr R18
 017E 3327              clr R19
 0180 00910000          lds R16,_testsem1
 0184 10910100          lds R17,_testsem1+1
 0188 0E940000          xcall _OSSemPend
 018C                   .dbline 183
 018C 00910200          lds R16,_testsem
 0190 10910300          lds R17,_testsem+1
 0194 0E940000          xcall _OSSemPost
 0198                   .dbline 184
 0198 02E0              ldi R16,2
 019A 4BD0              xcall _LED_Toggle
 019C                   .dbline 185
 019C 01E0              ldi R16,1
 019E 10E0              ldi R17,0
 01A0 0E940000          xcall _OSTimeDly
 01A4                   .dbline 186
 01A4           L9:
 01A4                   .dbline 179
 01A4 E5CF              xjmp L8
 01A6           X1:
 01A6                   .dbline -2
 01A6           L7:
 01A6 2396              adiw R28,3
 01A8 0E940000          xcall pop_gset1
 01AC                   .dbline 0 ; func end
 01AC 0895              ret
 01AE                   .dbsym l err 2 c
 01AE                   .dbsym r p_arg 20 pV
 01AE                   .dbend
 01AE                   .dbfunc s AppTask2 _AppTask2 fV
 01AE           ;            err -> y+2
 01AE           ;          p_arg -> R20,R21
                        .even
 01AE           _AppTask2:
 01AE 0E940000          xcall push_gset1
 01B2 A801              movw R20,R16
 01B4 2397              sbiw R28,3
 01B6                   .dbline -1
 01B6                   .dbline 196
 01B6           ;       
 01B6           ;       
 01B6           ;       
 01B6           ;     while (TRUE) {
 01B6           ;         LED_Toggle(2);
 01B6           ;               
 01B6           ;               OSSemPend(testsem1,0,&err);
 01B6           ;           OSSemPost( testsem );
 01B6           ;               LED_Toggle(2);
 01B6           ;         OSTimeDly(OS_TICKS_PER_SEC / 50);  //5
 01B6           ;     }
 01B6           ; }
 01B6           ; 
 01B6           ; /*
 01B6           ; *********************************************************************************************************
 01B6           ; *                                              TASK #2
 01B6           ; *********************************************************************************************************
 01B6           ; */
 01B6           ; 
 01B6           ; static void  AppTask2(void *p_arg)
 01B6           ; {
 01B6                   .dbline 198
 01B6           ;  INT8U  err;
 01B6           ;     p_arg = p_arg;
 01B6 1AC0              xjmp L13
 01B8           L12:
 01B8                   .dbline 202
 01B8                   .dbline 203
 01B8 03E0              ldi R16,3
 01BA 3BD0              xcall _LED_Toggle
 01BC                   .dbline 205
 01BC CE01              movw R24,R28
 01BE 0296              adiw R24,2
 01C0 9983              std y+1,R25
 01C2 8883              std y+0,R24
 01C4 2227              clr R18
 01C6 3327              clr R19
 01C8 00910200          lds R16,_testsem
 01CC 10910300          lds R17,_testsem+1
 01D0 0E940000          xcall _OSSemPend
 01D4                   .dbline 206
 01D4 00910000          lds R16,_testsem1
 01D8 10910100          lds R17,_testsem1+1
 01DC 0E940000          xcall _OSSemPost
 01E0                   .dbline 207
 01E0 03E0              ldi R16,3
 01E2 27D0              xcall _LED_Toggle
 01E4                   .dbline 208
 01E4 01E0              ldi R16,1
 01E6 10E0              ldi R17,0
 01E8 0E940000          xcall _OSTimeDly
 01EC                   .dbline 209
 01EC           L13:
 01EC                   .dbline 202
 01EC E5CF              xjmp L12
 01EE           X2:
 01EE                   .dbline -2
 01EE           L11:
 01EE 2396              adiw R28,3
 01F0 0E940000          xcall pop_gset1
 01F4                   .dbline 0 ; func end
 01F4 0895              ret
 01F6                   .dbsym l err 2 c
 01F6                   .dbsym r p_arg 20 pV
 01F6                   .dbend
 01F6                   .dbfunc s AppTask3 _AppTask3 fV
 01F6           ;            err -> <dead>
 01F6           ;          p_arg -> R20,R21
                        .even
 01F6           _AppTask3:
 01F6 0E940000          xcall push_gset1
 01FA A801              movw R20,R16
 01FC                   .dbline -1
 01FC                   .dbline 218
 01FC           ;       
 01FC           ;       
 01FC           ;       
 01FC           ;     while (TRUE) {
 01FC           ;         LED_Toggle(3);
 01FC           ;               
 01FC           ;               OSSemPend(testsem,0,&err);
 01FC           ;           OSSemPost( testsem1 );
 01FC           ;               LED_Toggle(3);
 01FC           ;         OSTimeDly(OS_TICKS_PER_SEC / 50);  //2
 01FC           ;     }
 01FC           ; }
 01FC           ; /*
 01FC           ; *********************************************************************************************************
 01FC           ; *                                              TASK #2
 01FC           ; *********************************************************************************************************
 01FC           ; */
 01FC           ; 
 01FC           ; static void  AppTask3(void *p_arg)
 01FC           ; {

⌨️ 快捷键说明

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