apptask1.s

来自「AVR megal128下的ucos_ii」· S 代码 · 共 270 行

S
270
字号
	.module AppTask1.c
	.area vector(rom, abs)
	.org 64
	jmp _OSTickISR
	.org 72
	jmp _uart0_rx_isr
	.org 76
	jmp _uart0_udre_isr
	.org 120
	jmp _uart1_rx_isr
	.org 124
	jmp _uart1_udre_isr
	.area text(rom, con, rel)
	.dbfile D:\编写软件小系统\纯ucos\source\AppTask1.c
	.dbfunc e Init_AppTask1 _Init_AppTask1 fV
	.even
_Init_AppTask1::
	sbiw R28,3
	.dbline -1
	.dbline 23
; 
; #include  "..\include\includes.h"
; #include  "..\include\Publics.H"
; #include  "..\include\menu.h"
; //----------------------------------------------------------------------------//
; OS_STK   AppTask1Stk[OS_TASK_1_STK_SIZE];   //#define OS_TASK_STK_SIZE        256 
; 
; 
; 
; void Bee_Open(void);
; void Bee_Close(void);
;                     
; /*
; *****************************************************************************
; * 函数介绍:         任务一初始化 
; * 输入参数: 
; * 输出参数:-- 
; * 返 回 值:-- 		
; * 说    明:--  
; ******************************************************************************
; */ 
; void Init_AppTask1(void)                           
; {
	.dbline 24
;    OSTaskStkSize     = OS_TASK_1_STK_SIZE;        // Setup the default stack size    
	ldi R24,256
	ldi R25,1
	sts _OSTaskStkSize+1,R25
	sts _OSTaskStkSize,R24
	.dbline 25
;    OSTaskHardStkSize = OS_TASK_1_HARD_STK_SIZE;   //Setup the default hardware stack size  
	ldi R24,64
	ldi R25,0
	sts _OSTaskHardStkSize+1,R25
	sts _OSTaskHardStkSize,R24
	.dbline 26
;    OSTaskCreate(AppTask1, (void *)0, (OS_STK *)&AppTask1Stk[OSTaskStkSize - 1], 5);
	ldi R24,5
	std y+2,R24
	ldi R24,<_AppTask1Stk
	ldi R25,>_AppTask1Stk
	lds R30,_OSTaskStkSize
	lds R31,_OSTaskStkSize+1
	sbiw R30,1
	add R30,R24
	adc R31,R25
	std y+1,R31
	std y+0,R30
	clr R18
	clr R19
	ldi R16,<PL_AppTask1
	ldi R17,>PL_AppTask1
	xcall _OSTaskCreate
	.dbline -2
L1:
	adiw R28,3
	.dbline 0 ; func end
	ret
	.dbend
	.area data(ram, con, rel)
	.dbfile D:\编写软件小系统\纯ucos\source\AppTask1.c
L3:
	.blkb 2
	.area idata
	.word 0
	.area data(ram, con, rel)
	.dbfile D:\编写软件小系统\纯ucos\source\AppTask1.c
L4:
	.blkb 1
	.area idata
	.byte 0
	.area data(ram, con, rel)
	.dbfile D:\编写软件小系统\纯ucos\source\AppTask1.c
	.area text(rom, con, rel)
	.dbfile D:\编写软件小系统\纯ucos\source\AppTask1.c
	.dbfunc e AppTask1 _AppTask1 fV
	.dbsym s BeeSign L4 c
	.dbsym s num L3 i
;          p_arg -> R20,R21
	.even
_AppTask1::
	xcall push_gset1
	movw R20,R16
	.dbline -1
	.dbline 42
; }
; 
; 
; /*
; *****************************************************************************
; * 函数介绍:      任务一
; * 输入参数: 
; * 输出参数:-- 
; * 返 回 值:-- 		
; * 说    明:--  
; ******************************************************************************
; */ 
; 
; 
; void  AppTask1(void *p_arg)
; {
	.dbline 45
;    static INT16U num=0;
;    static INT8U BeeSign=0;
;    p_arg = p_arg;
	.dbline 46
;    DDRG|=(1<<PG4);
	lds R24,100
	ori R24,16
	sts 100,R24
	xjmp L6
L5:
	.dbline 49
; 
;    while (TRUE)
; 	 { 
	.dbline 50
; 	   num++;
	lds R24,L3
	lds R25,L3+1
	adiw R24,1
	sts L3+1,R25
	sts L3,R24
	.dbline 51
; 	   if(num==10)
	cpi R24,10
	ldi R30,0
	cpc R25,R30
	brne L8
	.dbline 52
; 	   {
	.dbline 53
; 	     if(BeeSign)
	lds R2,L4
	tst R2
	breq L10
	.dbline 54
; 		 {
	.dbline 55
; 		  Bee_Close();
	xcall _Bee_Close
	.dbline 56
; 		  BeeSign=0;
	clr R2
	sts L4,R2
	.dbline 57
; 		  PORTG|=(1<<PG4);
	lds R24,101
	ori R24,16
	sts 101,R24
	.dbline 58
; 	     }
	xjmp L11
L10:
	.dbline 60
; 		 else
; 		 {
	.dbline 61
; 		  Bee_Open();
	xcall _Bee_Open
	.dbline 62
; 		  BeeSign=1;
	ldi R24,1
	sts L4,R24
	.dbline 63
; 		  PORTG&=~(1<<PG4);
	lds R24,101
	andi R24,239
	sts 101,R24
	.dbline 64
; 		 }
L11:
	.dbline 65
; 		 num=0;
	clr R2
	clr R3
	sts L3+1,R3
	sts L3,R2
	.dbline 66
; 	   }
L8:
	.dbline 68
	ldi R16,1
	ldi R17,0
	xcall _OSTimeDly
	.dbline 69
	wdr
	.dbline 70
L6:
	.dbline 48
	xjmp L5
X0:
	.dbline -2
L2:
	xcall pop_gset1
	.dbline 0 ; func end
	ret
	.dbsym r p_arg 20 pV
	.dbend
	.dbfunc e Bee_Open _Bee_Open fV
	.even
_Bee_Open::
	.dbline -1
	.dbline 76
; 	   
;        OSTimeDly(OS_TICKS_PER_SEC/100);	
; 	   WDR();
; 	 }  
; }
;  
;  
; 
; void Bee_Open(void)
; {
	.dbline 77
;  TCCR1B|=0x0B;                   //1024分频,CTC模式开启
	in R24,0x2e
	ori R24,11
	out 0x2e,R24
	.dbline -2
L12:
	.dbline 0 ; func end
	ret
	.dbend
	.dbfunc e Bee_Close _Bee_Close fV
	.even
_Bee_Close::
	.dbline -1
	.dbline 81
;  }
; 
; void Bee_Close(void)
; {
	.dbline 82
;  TCCR1B=0x00;                    //1024分频,CTC模式开启//关
	clr R2
	out 0x2e,R2
	.dbline -2
L13:
	.dbline 0 ; func end
	ret
	.dbend
	.area bss(ram, con, rel)
	.dbfile D:\编写软件小系统\纯ucos\source\AppTask1.c
_AppTask1Stk::
	.blkb 256
	.dbsym e AppTask1Stk _AppTask1Stk A[256:256]c
	.area func_lit
PL_AppTask1:	.word `_AppTask1

⌨️ 快捷键说明

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