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

📄 main.src

📁 本文面向首次接触uC/OS-II的程序员
💻 SRC
📖 第 1 页 / 共 2 页
字号:
; 	Comm_Port=0;
			; SOURCE LINE # 82
	CLR  	Comm_Port
; 	P12887a=0x20;
			; SOURCE LINE # 83
	MOV  	DPTR,#0A00AH
	MOV  	A,#020H
	MOVX 	@DPTR,A
;     Lcd1602Init();
			; SOURCE LINE # 84
	LCALL	Lcd1602Init
; 
; 	OSTaskCreate (TestTask1,(void *)0, &TestTask1Stk[0], 1);
			; SOURCE LINE # 86
	MOV  	DPTR,#0FFFFH
	LCALL	?C?ADDXBP
	MOV  	A,#01H
	MOVX 	@DPTR,A
	MOV  	R3,A
	MOV  	R2,#HIGH (TestTask1Stk)
	MOV  	R1,#LOW (TestTask1Stk)
	MOV  	DPTR,#0FFFDH
	LCALL	?C?ADDXBP
	LCALL	?C?PSTXDATA
	MOV  	R3,#00H
	MOV  	R2,#00H
	MOV  	R1,#00H
	MOV  	DPTR,#0FFFDH
	LCALL	?C?ADDXBP
	LCALL	?C?PSTXDATA
	MOV  	R3,#0FFH
	MOV  	R2,#HIGH (_?TestTask1)
	MOV  	R1,#LOW (_?TestTask1)
	LCALL	_?OSTaskCreate
; 	OSTaskCreate (TestTask2,(void *)0, &TestTask2Stk[0], 2);
			; SOURCE LINE # 87
	MOV  	DPTR,#0FFFFH
	LCALL	?C?ADDXBP
	MOV  	A,#02H
	MOVX 	@DPTR,A
	MOV  	R3,#01H
	MOV  	R2,#HIGH (TestTask2Stk)
	MOV  	R1,#LOW (TestTask2Stk)
	MOV  	DPTR,#0FFFDH
	LCALL	?C?ADDXBP
	LCALL	?C?PSTXDATA
	MOV  	R3,#00H
	MOV  	R2,#00H
	MOV  	R1,#00H
	MOV  	DPTR,#0FFFDH
	LCALL	?C?ADDXBP
	LCALL	?C?PSTXDATA
	MOV  	R3,#0FFH
	MOV  	R2,#HIGH (_?TestTask2)
	MOV  	R1,#LOW (_?TestTask2)
	LCALL	_?OSTaskCreate
; 	OSTaskCreate (TestTask3,(void *)0, &TestTask3Stk[0], 3);
			; SOURCE LINE # 88
	MOV  	DPTR,#0FFFFH
	LCALL	?C?ADDXBP
	MOV  	A,#03H
	MOVX 	@DPTR,A
	MOV  	R3,#01H
	MOV  	R2,#HIGH (TestTask3Stk)
	MOV  	R1,#LOW (TestTask3Stk)
	MOV  	DPTR,#0FFFDH
	LCALL	?C?ADDXBP
	LCALL	?C?PSTXDATA
	MOV  	R3,#00H
	MOV  	R2,#00H
	MOV  	R1,#00H
	MOV  	DPTR,#0FFFDH
	LCALL	?C?ADDXBP
	LCALL	?C?PSTXDATA
	MOV  	R3,#0FFH
	MOV  	R2,#HIGH (_?TestTask3)
	MOV  	R1,#LOW (_?TestTask3)
	LCALL	_?OSTaskCreate
; 	OSTaskCreate (TestTask4,(void *)0, &TestTask4Stk[0], 4);
			; SOURCE LINE # 89
	MOV  	DPTR,#0FFFFH
	LCALL	?C?ADDXBP
	MOV  	A,#04H
	MOVX 	@DPTR,A
	MOV  	R3,#01H
	MOV  	R2,#HIGH (TestTask4Stk)
	MOV  	R1,#LOW (TestTask4Stk)
	MOV  	DPTR,#0FFFDH
	LCALL	?C?ADDXBP
	LCALL	?C?PSTXDATA
	MOV  	R3,#00H
	MOV  	R2,#00H
	MOV  	R1,#00H
	MOV  	DPTR,#0FFFDH
	LCALL	?C?ADDXBP
	LCALL	?C?PSTXDATA
	MOV  	R3,#0FFH
	MOV  	R2,#HIGH (_?TestTask4)
	MOV  	R1,#LOW (_?TestTask4)
	LCALL	_?OSTaskCreate
; 
; 	OSStart();
			; SOURCE LINE # 91
	LJMP 	_?OSStart
; END OF main

; }					    
; 
; void	TestTask1 (void *os_pdata) reentrant

	RSEG  ?PR?_?TestTask1?MAIN
_?TestTask1:
	USING	0
			; SOURCE LINE # 94
	MOV  	DPTR,#0FFFDH
	LCALL	?C?ADDXBP
	LCALL	?C?PSTXDATA
; {
; 	os_pdata = os_pdata;
			; SOURCE LINE # 96
	MOV  	DPH,?C_XBP
	MOV  	DPL,?C_XBP+01H
	LCALL	?C?PLDXDATA
	MOV  	DPH,?C_XBP
	MOV  	DPL,?C_XBP+01H
	LCALL	?C?PSTXDATA
;     
;     InitS0(38400);
			; SOURCE LINE # 98
	MOV  	R6,#096H
	MOV  	R7,#00H
	LCALL	_?InitS0
;    	InitTick();
			; SOURCE LINE # 99
	LCALL	_?InitTick
?C0012:
;     
; 	while (1)
			; SOURCE LINE # 101
; 	{
			; SOURCE LINE # 102
; 		printf ("TASK-1\n");
			; SOURCE LINE # 103
	MOV  	R3,#0FFH
	MOV  	R2,#HIGH (?SC_0)
	MOV  	R1,#LOW (?SC_0)
	LCALL	_printf
;         OSTimeDly(OS_TICKS_PER_SEC);
			; SOURCE LINE # 104
	MOV  	R6,#00H
	MOV  	R7,#032H
	LCALL	_?OSTimeDly
; 	}
			; SOURCE LINE # 105
	SJMP 	?C0012
; END OF _?TestTask1

; 
; }
; 
; INT8S idata LogoStr[]="                This is a Test Program Designed by Huaxin.";
; 
; void	TestTask2(void *os_pdata) reentrant

	RSEG  ?PR?_?TestTask2?MAIN
_?TestTask2:
	USING	0
			; SOURCE LINE # 111
	MOV  	DPTR,#0FFFDH
	LCALL	?C?ADDXBP
	LCALL	?C?PSTXDATA
	MOV  	DPTR,#0FFFDH
	LCALL	?C?ADDXBP
; {
;     INT8U *cp;
;     cp=LogoStr;
			; SOURCE LINE # 114
	MOV  	R3,#00H
	MOV  	R2,#HIGH (LogoStr)
	MOV  	R1,#LOW (LogoStr)
	MOV  	DPH,?C_XBP
	MOV  	DPL,?C_XBP+01H
	LCALL	?C?PSTXDATA
;     os_pdata = os_pdata;
			; SOURCE LINE # 115
	MOV  	DPTR,#03H
	LCALL	?C?XBPOFF
	LCALL	?C?PLDXDATA
	MOV  	DPTR,#03H
	LCALL	?C?XBPOFF
	LCALL	?C?PSTXDATA
?C0015:
; 
; 	while(1)
			; SOURCE LINE # 117
; 	{
			; SOURCE LINE # 118
; 		Lcd1602Clr(2);    
			; SOURCE LINE # 119
	MOV  	R7,#02H
	LCALL	_Lcd1602Clr
;         Lcd1602DispStr(1,2,cp);
			; SOURCE LINE # 120
	MOV  	DPH,?C_XBP
	MOV  	DPL,?C_XBP+01H
	LCALL	?C?PLDXDATA
	MOV  	R5,#02H
	MOV  	R7,#01H
	LCALL	_Lcd1602DispStr
; 	    printf ("TASK-2\n");
			; SOURCE LINE # 121
	MOV  	R3,#0FFH
	MOV  	R2,#HIGH (?SC_8)
	MOV  	R1,#LOW (?SC_8)
	LCALL	_printf
; 		OSTimeDly(OS_TICKS_PER_SEC/2);  
			; SOURCE LINE # 122
	MOV  	R6,#00H
	MOV  	R7,#019H
	LCALL	_?OSTimeDly
;   	    cp++;
			; SOURCE LINE # 123
	MOV  	DPH,?C_XBP
	MOV  	DPL,?C_XBP+01H
	INC  	DPTR
	CLR  	A
	MOV  	B,#01H
	LCALL	?C?IILDX
;         if(*cp=='\0')
			; SOURCE LINE # 124
	MOV  	DPH,?C_XBP
	MOV  	DPL,?C_XBP+01H
	LCALL	?C?PLDXDATA
	LCALL	?C?CLDPTR
	JNZ  	?C0015
;           {
			; SOURCE LINE # 125
;             cp=LogoStr;
			; SOURCE LINE # 126
	MOV  	R3,A
	MOV  	R2,#HIGH (LogoStr)
	MOV  	R1,#LOW (LogoStr)
	MOV  	DPH,?C_XBP
	MOV  	DPL,?C_XBP+01H
	LCALL	?C?PSTXDATA
;           }
			; SOURCE LINE # 127
; 	}
			; SOURCE LINE # 128
	SJMP 	?C0015
; END OF _?TestTask2

; }
; 
; void	TestTask3(void *os_pdata) reentrant

	RSEG  ?PR?_?TestTask3?MAIN
_?TestTask3:
	USING	0
			; SOURCE LINE # 131
	MOV  	DPTR,#0FFFDH
	LCALL	?C?ADDXBP
	LCALL	?C?PSTXDATA
; {
; 	os_pdata = os_pdata;
			; SOURCE LINE # 133
	MOV  	DPH,?C_XBP
	MOV  	DPL,?C_XBP+01H
	LCALL	?C?PLDXDATA
	MOV  	DPH,?C_XBP
	MOV  	DPL,?C_XBP+01H
	LCALL	?C?PSTXDATA
?C0019:
; 
; 	while(1)
			; SOURCE LINE # 135
; 	{
			; SOURCE LINE # 136
; 		Lcd1602Clr(1);
			; SOURCE LINE # 137
	MOV  	R7,#01H
	LCALL	_Lcd1602Clr
; 		OSTimeDly(OS_TICKS_PER_SEC/5);
			; SOURCE LINE # 138
	MOV  	R6,#00H
	MOV  	R7,#0AH
	LCALL	_?OSTimeDly
; 		Lcd1602DispStr(2,1,"uC/OS-II");
			; SOURCE LINE # 139
	MOV  	R3,#0FFH
	MOV  	R2,#HIGH (?SC_16)
	MOV  	R1,#LOW (?SC_16)
	MOV  	R5,#01H
	MOV  	R7,#02H
	LCALL	_Lcd1602DispStr
;         Lcd1602DispCha(10, 1, ' ');
			; SOURCE LINE # 140
	MOV  	R3,#020H
	MOV  	R5,#01H
	MOV  	R7,#0AH
	LCALL	_Lcd1602DispCha
;         Lcd1602DispStr(11,1,"V2.52");
			; SOURCE LINE # 141
	MOV  	R3,#0FFH
	MOV  	R2,#HIGH (?SC_25)
	MOV  	R1,#LOW (?SC_25)
	MOV  	R7,#0BH
	LCALL	_Lcd1602DispStr
; 	    printf ("TASK-3\n");
			; SOURCE LINE # 142
	MOV  	R3,#0FFH
	MOV  	R2,#HIGH (?SC_31)
	MOV  	R1,#LOW (?SC_31)
	LCALL	_printf
; 		OSTimeDly(OS_TICKS_PER_SEC/5);
			; SOURCE LINE # 143
	MOV  	R6,#00H
	MOV  	R7,#0AH
	LCALL	_?OSTimeDly
; 	}
			; SOURCE LINE # 144
	SJMP 	?C0019
; END OF _?TestTask3

; }
; 
; void	TestTask4(void *os_pdata) reentrant

	RSEG  ?PR?_?TestTask4?MAIN
_?TestTask4:
	USING	0
			; SOURCE LINE # 147
	MOV  	DPTR,#0FFFDH
	LCALL	?C?ADDXBP
	LCALL	?C?PSTXDATA
; {
;     os_pdata = os_pdata;
			; SOURCE LINE # 149
	MOV  	DPH,?C_XBP
	MOV  	DPL,?C_XBP+01H
	LCALL	?C?PLDXDATA
	MOV  	DPH,?C_XBP
	MOV  	DPL,?C_XBP+01H
	LCALL	?C?PSTXDATA
?C0022:
; 
; 	while(1)
			; SOURCE LINE # 151
; 	{
			; SOURCE LINE # 152
; 		LED=0;
			; SOURCE LINE # 153
	CLR  	LED
; 		OSTimeDly(OS_TICKS_PER_SEC/2);
			; SOURCE LINE # 154
	MOV  	R6,#00H
	MOV  	R7,#019H
	LCALL	_?OSTimeDly
;         LED=1;
			; SOURCE LINE # 155
	SETB 	LED
; 	    printf ("TASK-4\n");
			; SOURCE LINE # 156
	MOV  	R3,#0FFH
	MOV  	R2,#HIGH (?SC_39)
	MOV  	R1,#LOW (?SC_39)
	LCALL	_printf
; 		OSTimeDly(OS_TICKS_PER_SEC/2);
			; SOURCE LINE # 157
	MOV  	R6,#00H
	MOV  	R7,#019H
	LCALL	_?OSTimeDly
; 	}
			; SOURCE LINE # 158
	SJMP 	?C0022
; END OF _?TestTask4

	END

⌨️ 快捷键说明

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