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

📄 test1.s

📁 UCOS/II for ICCAVR - The version of UCOS/II is 2.04 - the original port was done by Ole Saether
💻 S
字号:
	.module test1.c
	.area text(rom, con, rel)
	.dbfile F:\开发工具\AVR开发工具\RTOSIC~1\source\test1.c
	.dbfunc e main _main fV
	.even
_main::
	sbiw R28,4
	.dbline -1
	.dbline 32
; /*
; ********************************************************************************
; * Portierung des RTOS "礐/OS-II" von Jean J. Labrosse auf den ATmega103
; * 
; * Compiler:		IIC von imagecraft
; * File:			Test1.c (Testapplikation)
; * By:			Joerg Meyer
; * Revision:		0
; *
; *
; *
; ********************************************************************************
; */
; #define Test1_GLOBALS
; #include "includes.h"
; 
; //******************************************************************************
; // Constants
; #define TaskStartPrio	10		// Task-Prioritaeten
; 
; 
; //*****************************************************************************
; // Variablen
; OS_STK	Task1Stack[OS_TASK_DEF_STK_SIZE];		// startup task stack
; OS_STK	Task2Stack[OS_TASK_DEF_STK_SIZE];	
; 
; //*****************************************************************************
; // Prototypes
; void Task1(void *pdata);
; //*****************************************************************************
; // Start
; void main(void){
	.dbline 33
; 	OSInit();		// OS init
	xcall _OSInit
	.dbline 35
; 
; 	OSTaskCreate(Task1,
	ldi R24,11
	ldi R25,0
	std y+3,R25
	std y+2,R24
	ldi R24,<_Task1Stack+127
	ldi R25,>_Task1Stack+127
	std y+1,R25
	std y+0,R24
	ldi R18,97
	ldi R19,0
	ldi R16,<PL_Task1
	ldi R17,>PL_Task1
	xcall _OSTaskCreate
	.dbline 39
; 				(void *)(int)'a',
; 				&Task1Stack[OS_TASK_DEF_STK_SIZE-1],
; 				TaskStartPrio+1);
; 	OSTaskCreate(Task1,
	ldi R24,10
	ldi R25,0
	std y+3,R25
	std y+2,R24
	ldi R24,<_Task2Stack+127
	ldi R25,>_Task2Stack+127
	std y+1,R25
	std y+0,R24
	ldi R18,98
	ldi R19,0
	ldi R16,<PL_Task1
	ldi R17,>PL_Task1
	xcall _OSTaskCreate
	.dbline 45
; 				(void *)(int)'b',
; 				&Task2Stack[OS_TASK_DEF_STK_SIZE-1],
; 				TaskStartPrio); 
;                 
; 	// init und start tick
; 	TC2_Init();			// Timer/Counter#2 Overflow and Comp init
	xcall _TC2_Init
	.dbline 48
; 
; 
; 	OSStart();		// start multitasking
	xcall _OSStart
	.dbline -2
	.dbline 50
; 
; }
L1:
	adiw R28,4
	.dbline 0 ; func end
	ret
	.dbend
	.dbfunc e Task1 _Task1 fV
;              c -> R20
;           data -> R20,R21
	.even
_Task1::
	xcall push_gset1
	mov R20,R16
	mov R21,R17
	.dbline -1
	.dbline 53
; 
; //*****************************************************************************
; void Task1(void *data){
	.dbline 54
; 	char c = (int)data;
	.dbline 55
L5:
	.dbline 55
	.dbline 56
	mov R16,R20
	clr R17
	xcall _putchar
	.dbline 57
	ldi R16,2
	ldi R17,0
	xcall _OSTimeDly
	.dbline 59
	.dbline 55
	.dbline 55
	xjmp L5
X0:
	.dbline -2
L4:
	xcall pop_gset1
	.dbline 0 ; func end
	ret
	.dbsym r c 20 c
	.dbsym r data 20 pV
	.dbend
	.area bss(ram, con, rel)
	.dbfile F:\开发工具\AVR开发工具\RTOSIC~1\source\test1.c
_Task2Stack::
	.blkb 128
	.dbsym e Task2Stack _Task2Stack A[128:128]c
_Task1Stack::
	.blkb 128
	.dbsym e Task1Stack _Task1Stack A[128:128]c
	.area func_lit
PL_Task1:	.word `_Task1

⌨️ 快捷键说明

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