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

📄 ucos_ii.src

📁 本人于2005年初开始准备将&micro C/OS-II嵌入式实时操作系统移植到8051单片机上
💻 SRC
📖 第 1 页 / 共 5 页
字号:
	ADD  	A,#LOW (OSTCBPrioTbl)
	MOV  	DPL,A
	CLR  	A
	ADDC 	A,#HIGH (OSTCBPrioTbl)
	MOV  	DPH,A
	MOV  	A,R3
	MOVX 	@DPTR,A
	INC  	DPTR
	MOV  	A,R2
	MOVX 	@DPTR,A
	INC  	DPTR
	MOV  	A,R1
	MOVX 	@DPTR,A
; *** sync lost ***
			; SOURCE LINE # 1077
	MOV  	DPTR,#OSTCBList
	MOVX 	A,@DPTR
	MOV  	R3,A
	INC  	DPTR
	MOVX 	A,@DPTR
	MOV  	R2,A
	INC  	DPTR
	MOVX 	A,@DPTR
	MOV  	R1,A
	PUSH 	AR3
	PUSH 	AR2
	PUSH 	AR1
	MOV  	DPTR,#ptcb?1554
	MOVX 	A,@DPTR
	MOV  	R3,A
	INC  	DPTR
	MOVX 	A,@DPTR
	MOV  	R2,A
	INC  	DPTR
	MOVX 	A,@DPTR
	MOV  	R1,A
	MOV  	DPTR,#03H
	LCALL	?C?PSTOPTR
; *** sync lost ***
			; SOURCE LINE # 1078
	MOV  	R3,#00H
	MOV  	R2,#00H
	MOV  	R1,#00H
	PUSH 	AR3
	PUSH 	AR2
	PUSH 	AR1
	MOV  	DPTR,#ptcb?1554
	MOVX 	A,@DPTR
	MOV  	R3,A
	INC  	DPTR
	MOVX 	A,@DPTR
	MOV  	R2,A
	INC  	DPTR
	MOVX 	A,@DPTR
	MOV  	R1,A
	MOV  	DPTR,#06H
	LCALL	?C?PSTOPTR
; *** sync lost ***
			; SOURCE LINE # 1079
	MOV  	DPTR,#OSTCBList
	MOVX 	A,@DPTR
	MOV  	R3,A
	INC  	DPTR
	MOVX 	A,@DPTR
	MOV  	R2,A
	INC  	DPTR
	MOVX 	A,@DPTR
	ORL  	A,R2
	ORL  	A,R3
	JZ   	?C0051
; *** sync lost ***
			; SOURCE LINE # 1080
	MOV  	DPTR,#ptcb?1554
	MOVX 	A,@DPTR
	MOV  	R3,A
	INC  	DPTR
	MOVX 	A,@DPTR
	MOV  	R2,A
	INC  	DPTR
	MOVX 	A,@DPTR
	MOV  	R1,A
	PUSH 	AR3
	PUSH 	AR2
	PUSH 	AR1
	MOV  	DPTR,#OSTCBList
	MOVX 	A,@DPTR
	MOV  	R3,A
	INC  	DPTR
	MOVX 	A,@DPTR
	MOV  	R2,A
	INC  	DPTR
	MOVX 	A,@DPTR
	MOV  	R1,A
	MOV  	DPTR,#06H
	LCALL	?C?PSTOPTR
; *** sync lost ***
			; SOURCE LINE # 1081
?C0051:
; *** sync lost ***
			; SOURCE LINE # 1082
	MOV  	DPTR,#ptcb?1554
	MOVX 	A,@DPTR
	MOV  	R1,A
	INC  	DPTR
	MOVX 	A,@DPTR
	MOV  	R2,A
	INC  	DPTR
	MOVX 	A,@DPTR
	MOV  	DPTR,#OSTCBList
	XCH  	A,R1
	MOVX 	@DPTR,A
	INC  	DPTR
	MOV  	A,R2
	MOVX 	@DPTR,A
	INC  	DPTR
	MOV  	A,R1
	MOVX 	@DPTR,A
; *** sync lost ***
			; SOURCE LINE # 1083
	MOV  	DPTR,#OSRdyGrp
	MOVX 	A,@DPTR
	MOV  	R7,A
	MOV  	DPTR,#ptcb?1554
	MOVX 	A,@DPTR
	MOV  	R3,A
	INC  	DPTR
	INC  	DPTR
	MOVX 	A,@DPTR
	MOV  	R1,A
	MOV  	DPTR,#010H
	LCALL	?C?CLDOPTR
	MOV  	R6,A
	MOV  	A,R7
	ORL  	A,R6
	MOV  	DPTR,#OSRdyGrp
	MOVX 	@DPTR,A
; *** sync lost ***
			; SOURCE LINE # 1084
	MOV  	DPTR,#0EH
	LCALL	?C?CLDOPTR
	ADD  	A,#LOW (OSRdyTbl)
	MOV  	DPL,A
	CLR  	A
	ADDC 	A,#HIGH (OSRdyTbl)
	MOV  	DPH,A
	PUSH 	DPH
	PUSH 	DPL
	MOVX 	A,@DPTR
	MOV  	R7,A
	MOV  	DPTR,#0FH
	LCALL	?C?CLDOPTR
	MOV  	R6,A
	MOV  	A,R7
	ORL  	A,R6
	POP  	DPL
	POP  	DPH
	MOVX 	@DPTR,A
; *** sync lost ***
			; SOURCE LINE # 1085
	SETB 	EA
; *** sync lost ***
			; SOURCE LINE # 1086
	MOV  	R7,#00H
	RET  	
; *** sync lost ***
			; SOURCE LINE # 1087
?C0050:
; *** sync lost ***
			; SOURCE LINE # 1088
	SETB 	EA
; *** sync lost ***
			; SOURCE LINE # 1089
	MOV  	R7,#046H
; *** sync lost ***
			; SOURCE LINE # 1090
?C0052:
	RET  	
; END OF _OS_TCBInit


	RSEG  ?PR?_OSTaskCreate?UCOS_II
_OSTaskCreate:
	USING	0
			; SOURCE LINE # 156
	MOV  	DPTR,#task?1655
	MOV  	A,R3
	MOVX 	@DPTR,A
	INC  	DPTR
	MOV  	A,R2
	MOVX 	@DPTR,A
	INC  	DPTR
	MOV  	A,R1
	MOVX 	@DPTR,A
			; SOURCE LINE # 157
			; SOURCE LINE # 168
	CLR  	EA
			; SOURCE LINE # 169
	MOV  	DPTR,#prio?1658
	MOVX 	A,@DPTR
	MOV  	R7,A
	MOV  	B,#03H
	MUL  	AB
	ADD  	A,#LOW (OSTCBPrioTbl)
	MOV  	DPL,A
	CLR  	A
	ADDC 	A,#HIGH (OSTCBPrioTbl)
	MOV  	DPH,A
	MOVX 	A,@DPTR
	MOV  	R3,A
	INC  	DPTR
	MOVX 	A,@DPTR
	MOV  	R2,A
	INC  	DPTR
	MOVX 	A,@DPTR
	ORL  	A,R2
	ORL  	A,R3
	JZ   	$ + 5H
	LJMP 	?C0053
			; SOURCE LINE # 170
	MOV  	R1,#01H
	MOV  	A,R7
	MOV  	B,#03H
	MUL  	AB
	ADD  	A,#LOW (OSTCBPrioTbl)
	MOV  	DPL,A
	CLR  	A
	ADDC 	A,#HIGH (OSTCBPrioTbl)
	MOV  	DPH,A
	CLR  	A
	MOVX 	@DPTR,A
	INC  	DPTR
	MOVX 	@DPTR,A
	INC  	DPTR
	INC  	A
	MOVX 	@DPTR,A
			; SOURCE LINE # 172
	SETB 	EA
			; SOURCE LINE # 173
	MOV  	DPTR,#0FFFEH
	LCALL	?C?ADDXBP
	CLR  	A
	MOVX 	@DPTR,A
	INC  	DPTR
	MOVX 	@DPTR,A
	MOV  	DPTR,#ptos?1657
	MOVX 	A,@DPTR
	MOV  	R3,A
	INC  	DPTR
	MOVX 	A,@DPTR
	MOV  	R2,A
	INC  	DPTR
	MOVX 	A,@DPTR
	MOV  	R1,A
	MOV  	DPTR,#0FFFDH
	LCALL	?C?ADDXBP
	MOV  	A,R3
	MOVX 	@DPTR,A
	INC  	DPTR
	MOV  	A,R2
	MOVX 	@DPTR,A
	INC  	DPTR
	MOV  	A,R1
	MOVX 	@DPTR,A
	MOV  	DPTR,#ppdata?1656
	MOVX 	A,@DPTR
	MOV  	R3,A
	INC  	DPTR
	MOVX 	A,@DPTR
	MOV  	R2,A
	INC  	DPTR
	MOVX 	A,@DPTR
	MOV  	R1,A
	MOV  	DPTR,#0FFFDH
	LCALL	?C?ADDXBP
	MOV  	A,R3
	MOVX 	@DPTR,A
	INC  	DPTR
	MOV  	A,R2
	MOVX 	@DPTR,A
	INC  	DPTR
	MOV  	A,R1
	MOVX 	@DPTR,A
	MOV  	DPTR,#task?1655
	MOVX 	A,@DPTR
	MOV  	R3,A
	INC  	DPTR
	MOVX 	A,@DPTR
	MOV  	R2,A
	INC  	DPTR
	MOVX 	A,@DPTR
	MOV  	R1,A
	LCALL	_?OSTaskStkInit
;---- Variable 'psp?1659' assigned to Register 'R1/R2/R3' ----
			; SOURCE LINE # 174
	MOV  	DPTR,#?_OS_TCBInit?BYTE+04H
	CLR  	A
	MOVX 	@DPTR,A
	INC  	DPTR
	MOVX 	@DPTR,A
	INC  	DPTR
	MOVX 	@DPTR,A
	INC  	DPTR
	MOVX 	@DPTR,A
	INC  	DPTR
	MOVX 	@DPTR,A
	INC  	DPTR
	LCALL	?C?LSTKXDATA
	DB   	00H
	DB   	00H
	DB   	00H
	DB   	00H
	MOV  	DPTR,#?_OS_TCBInit?BYTE+0DH
	CLR  	A
	MOVX 	@DPTR,A
	INC  	DPTR
	MOVX 	@DPTR,A
	INC  	DPTR
	MOVX 	@DPTR,A
	INC  	DPTR
	MOVX 	@DPTR,A
	INC  	DPTR
	MOVX 	@DPTR,A
	MOV  	DPTR,#prio?1658
	MOVX 	A,@DPTR
	MOV  	R7,A
	LCALL	_OS_TCBInit
	MOV  	DPTR,#err?1660
	MOV  	A,R7
	MOVX 	@DPTR,A
			; SOURCE LINE # 175
	JNZ  	?C0054
			; SOURCE LINE # 176
	CLR  	EA
			; SOURCE LINE # 177
	MOV  	DPTR,#OSTaskCtr
	MOVX 	A,@DPTR
	INC  	A
	MOVX 	@DPTR,A
			; SOURCE LINE # 178
	SETB 	EA
			; SOURCE LINE # 179
	MOV  	R0,#LOW (OSRunning)
	MOV  	A,@R0
	CJNE 	A,#01H,?C0056
			; SOURCE LINE # 180
	LCALL	OS_Sched
			; SOURCE LINE # 181
			; SOURCE LINE # 182
	SJMP 	?C0056
?C0054:
			; SOURCE LINE # 183
	CLR  	EA
			; SOURCE LINE # 184
	MOV  	DPTR,#prio?1658
	MOVX 	A,@DPTR
	MOV  	B,#03H
	MUL  	AB
	ADD  	A,#LOW (OSTCBPrioTbl)
	MOV  	DPL,A
	CLR  	A
	ADDC 	A,#HIGH (OSTCBPrioTbl)
	MOV  	DPH,A
	CLR  	A
	MOVX 	@DPTR,A
	INC  	DPTR
	MOVX 	@DPTR,A
	INC  	DPTR
	MOVX 	@DPTR,A
			; SOURCE LINE # 185
	SETB 	EA
			; SOURCE LINE # 186
?C0056:
			; SOURCE LINE # 187
	MOV  	DPTR,#err?1660
	MOVX 	A,@DPTR
	MOV  	R7,A
	RET  	
			; SOURCE LINE # 188
?C0053:
			; SOURCE LINE # 189
	SETB 	EA
			; SOURCE LINE # 190
	MOV  	R7,#028H
			; SOURCE LINE # 191
?C0057:
	RET  	
; END OF _OSTaskCreate


	RSEG  ?PR?_OSTimeDly?UCOS_II
_OSTimeDly:
	USING	0
			; SOURCE LINE # 35
;---- Variable 'ticks?1761' assigned to Register 'R4/R5' ----
	MOV  	R5,AR7
	MOV  	R4,AR6
			; SOURCE LINE # 36
			; SOURCE LINE # 40
	SETB 	C
	MOV  	A,R5
	SUBB 	A,#00H
	MOV  	A,R4
	SUBB 	A,#00H
	JC   	?C0060
			; SOURCE LINE # 41
	CLR  	EA
			; SOURCE LINE # 42
	MOV  	R0,#LOW (OSTCBCur)
	MOV  	AR3,@R0
	INC  	R0
	MOV  	A,@R0
	MOV  	R2,A
	INC  	R0
	MOV  	A,@R0
	MOV  	R1,A
	MOV  	DPTR,#0EH
	LCALL	?C?CLDOPTR
	ADD  	A,#LOW (OSRdyTbl)
	MOV  	DPL,A
	CLR  	A
	ADDC 	A,#HIGH (OSRdyTbl)
	MOV  	DPH,A
	PUSH 	DPH
	PUSH 	DPL
	MOVX 	A,@DPTR
	MOV  	R7,A
	MOV  	R0,#LOW (OSTCBCur)
	MOV  	AR3,@R0
	INC  	R0
	MOV  	A,@R0
	MOV  	R2,A
	INC  	R0
	MOV  	A,@R0
	MOV  	R1,A
	MOV  	DPTR,#0FH
	LCALL	?C?CLDOPTR
	CPL  	A
	MOV  	R6,A
	MOV  	A,R7
	ANL  	A,R6
	POP  	DPL
	POP  	DPH
	MOVX 	@DPTR,A
	JNZ  	?C0059
			; SOURCE LINE # 43
	MOV  	DPTR,#OSRdyGrp
	MOVX 	A,@DPTR
	MOV  	R7,A
	MOV  	DPTR,#010H
	LCALL	?C?CLDOPTR
	CPL  	A
	MOV  	R6,A
	MOV  	A,R7
	ANL  	A,R6
	MOV  	DPTR,#OSRdyGrp
	MOVX 	@DPTR,A
			; SOURCE LINE # 44
?C0059:
			; SOURCE LINE # 45
	MOV  	R7,AR5
	MOV  	R0,#LOW (OSTCBCur)
	MOV  	AR3,@R0
	INC  	R0
	MOV  	A,@R0
	MOV  	R2,A
	INC  	R0
	MOV  	A,@R0
	MOV  	R1,A
	MOV  	DPTR,#09H
	MOV  	A,R4
	MOV  	B,R7
	LCALL	?C?ISTOPTR
			; SOURCE LINE # 46
	SETB 	EA
			; SOURCE LINE # 47
	LCALL	OS_Sched
			; SOURCE LINE # 48
			; SOURCE LINE # 49
?C0060:
	RET  	
; END OF _OSTimeDly


	RSEG  ?PR?_OSTimeDlyHMSM?UCOS_II
_OSTimeDlyHMSM:
	USING	0
			; SOURCE LINE # 77
	MOV  	DPTR,#seconds?1864
	MOV  	A,R3
	MOVX 	@DPTR,A
;---- Variable 'minutes?1863' assigned to Register 'R5' ----
	MOV  	DPTR,#hours?1862
	MOV  	A,R7
	MOVX 	@DPTR,A
			; SOURCE LINE # 78
			; SOURCE LINE # 83
	SETB 	C
	SUBB 	A,#00H
	JNC  	?C0062
	MOV  	A,R5
	SUBB 	A,#00H
	JNC  	?C0062
	MOV  	DPTR,#seconds?1864
	MOVX 	A,@DPTR
	SUBB 	A,#00H
	JNC  	?C0062
	MOV  	DPTR,#milli?1865+01H
	MOVX 	A,@DPTR
	SUBB 	A,#00H
	MOV  	DPTR,#milli?1865
	MOVX 	A,@DPTR
	SUBB 	A,#00H
	JNC  	$ + 5H
	LJMP 	?C0061
?C0062:
			; SOURCE LINE # 84
	MOV  	A,R5
	SETB 	C
	SUBB 	A,#03BH
	JC   	?C0063
			; SOURCE LINE # 85
	MOV  	R7,#051H
	RET  	
			; SOURCE LINE # 86
?C0063:
			; SOURCE LINE # 87
	MOV  	DPTR,#seconds?1864
	MOVX 	A,@DPTR
	SETB 	C
	SUBB 	A,#03BH
	JC   	?C0065
			; SOURCE LINE # 88
	MOV  	R7,#052H
	RET  	
			; SOURCE LINE # 89
?C0065:
			; SOURCE LINE # 90
	SETB 	C
	MOV  	DPTR,#milli?1865+01H
	MOVX 	A,@DPTR
	SUBB 	A,#0E7H
	MOV  	DPTR,#milli?1865
	MOVX 	A,@DPTR
	SUBB 	A,#03H
	JC   	?C0066
			; SOURCE LINE # 91
	MOV  	R7,#053H
	RET  	
			; SOURCE LINE # 92
?C0066:
			; SOURCE LINE # 96
	MOV  	R7,AR5
	CLR  	A
	MOV  	R4,A
	MOV  	R5,A
	MOV  	R6,A
	MOV  	R3,#03CH
	MOV  	R2,A
	MOV  	R1,A
	MOV  	R0,A
	LCALL	?C?LMUL
	PUSH 	AR4
	PUSH 	AR5
	PUSH 	AR6
	PUSH 	AR7
	MOV  	DPTR,#hours?1862
	MOVX 	A,@DPTR
	MOV  	R7,A
	CLR  	A
	MOV  	R4,A
	MOV  	R5,A
	MOV  	R6,A
	MOV  	R3,#010H
	MOV  	R2,#0EH
	MOV  	R1,A
	MOV  	R0,A
	LCALL	?C?LMUL
	POP  	AR3
	POP  	AR2
	POP  	AR1
	POP  	AR0
	MOV  	A,R7
	ADD  	A,R3
	MOV  	R3,A
	MOV  	A,R6
	ADDC 	A,R2
	MOV  	R2,A
	MOV  	A,R5
	ADDC 	A,R1
	MOV  	R1,A
	MOV  	A,R4
	ADDC 	A,R0
	MOV  	R0,A
	MOV  	DPTR,#seconds?1864
	MOVX 	A,@DPTR
	MOV  	R7,A
	CLR  	A
	MOV  	R4,A
	MOV  	R5,A
	MOV  	R6,A
	MOV  	A,R3
	ADD  	A,R7
	MOV  	R7,A
	MOV  	A,R6
	ADDC 	A,R2
	MOV  	R6,A
	MOV  	A,R5
	ADDC 	A,R1
	MOV  	R5,A
	MOV  	A,R4
	ADDC 	A,R0
	MOV  	R4,A
	CLR  	A
	MOV  	R3,#032H
	MOV  	R2,A
	MOV  	R1,A
	MOV  	R0,A
	LCALL	?C?LMUL
	PUSH 	AR4
	PUSH 	AR5
	PUSH 	AR6
	PUSH 	AR7
	MOV  	DPTR,#milli?1865
	MOVX 	A,@DPTR
	MOV  	R6,A
	INC  	DPTR
	MOVX 	A,@DPTR
	MOV  	R7,A
	MOV  	A,R7
	ADD  	A,#0AH
	MOV  	R7,A
	CLR  	A
	ADDC 	A,R6
	MOV  	R6,A
	CLR  	A
	RLC  	A
	MOV  	R5,A
	CLR  	A
	RLC  	A
	MOV  	R4,A
	CLR  	A
	MOV  	R3,#032H
	MOV  	R2,A
	MOV  	R1,A
	MOV  	R0,A
	LCALL	?C?LMUL
	CLR  	A
	MOV  	R3,#0E8H
	MOV  	R2,#03H
	MOV  	R1,A
	MOV  	R0,A
	LCALL	?C?ULDIV
	POP  	AR3
	POP  	AR2
	POP  	AR1
	POP  	AR0
	MOV  	A,R3
	ADD  	A,R7
	MOV  	R7,A
	MOV  	A,R2
	ADDC 	A,R6
	MOV  	R6,A
	MOV  	A,R1
	ADDC 	A,R5
	MOV  	R5,A
	MOV  	A,R0
	ADDC 	A,R4
	MOV  	R4,A
	MOV  	DPTR,#ticks?1866
	LCALL	?C?LSTXDATA
			; SOURCE LINE # 97
	CLR  	A
	MOV  	R3,A
	MOV  	R2,A
	MOV  	R1,#01H
	MOV  	R0,A
	MOV  	DPTR,#ticks?1866
	MOVX 	A,@DPTR
	MOV  	R4,A
	INC  	DPTR
	MOVX 	A,@DPTR
	MOV  	R5,A
	INC  	DPTR
	MOVX 	A,@DPTR
	MOV  	R6,A
	INC  	DPTR
	MOVX 	A,@DPTR
	MOV  	R7,A
	LCALL	?C?ULDIV
	MOV  	DPTR,#loops?1867
	MOV  	A,R6
	MOVX 	@DPTR,A
	INC  	DPTR
	MOV  	A,R7
	MOVX 	@DPTR,A
			; SOURCE LINE # 98
	MOV  	DPTR,#ticks?1866
	INC  	DPTR
	INC  	DPTR
	MOVX 	A,@DPTR
	MOV  	R6,A
	INC  	DPTR
	MOVX 	A,@DPTR
	MOV  	R7,A
	CLR  	A
	MOV  	R5,A
	MOV  	R4,A
	MOV  	DPTR,#ticks?1866
	LCALL	?C?LSTXDATA
			; SOURCE LINE # 99
	MOV  	DPTR,#ticks?1866+02H
	MOVX 	A,@DPTR
	MOV  	R6,A
	INC  	DPTR
	MOVX 	A,@DPTR
	MOV  	R7,A
	LCALL	_OSTimeDly
?C0067:
			; SO

⌨️ 快捷键说明

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