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

📄 os_cpu_a.asm

📁 f2812的初始化构架
💻 ASM
字号:
;                   INT  SVC system
* Copyright (c) 2007,南京因泰莱电器股份有限公司开发部
* All rights reserved.
* 
* 文件名称:OS_CPU_A.asm
* 摘    要:实现F2812操作系统UCOS-II的中断任务切换
* 
* 当前版本:0.9
* 作    者:洪远洋 
* 完成日期:2006年1月5日
*
* 取代版本:0.1
* 原作者  :洪远洋
* 完成日期:2007年1月4日
*
*
*
*
.page
.text

_OSIntCtxSwExe:
	.ref _OSTCBHighRdy
	.ref _OSTCBCur
	.ref _OSPrioHighRdy
	.ref _OSPrioCur
	.ref _OSIntCtxFlag
	.global _OSIntCtxSwExe
	
	 MOVW ACC, #0               ; 清零_OSIntCtxFlag,保证下一次切换进行
	 MOVW @_OSIntCtxFlag, ACC
	     	 
	 MOVW DP,#_OSTCBHighRdy	 	; OSTCBCur = OSTCBHighRdy
     MOVL ACC,@_OSTCBHighRdy    
     MOVW DP,#_OSTCBCur
     MOVL @_OSTCBCur,ACC        
	
	
     MOVW DP,#_OSPrioHighRdy    	;OSPrioCur = OSPrioHighRdy
     MOV  AL,@_OSPrioHighRdy    
     MOVW DP,#_OSPrioCur
     MOV  @_OSPrioCur,AL        
;=================================================================================	     
	
	
	 MOVW    DP,#_OSTCBHighRdy	 ;SP = OSTCBhighRdy->OSTCBStkPtr	
     MOVL    XAR4,@_OSTCBHighRdy   
     MOV     AL,*+XAR4[0] 
     MOV     @SP,AL
     
     
     POP    RPC                  ;取出新任务堆栈中的CONTEXT
     POP	XT
     POP    AR1H:AR0H
     POP	XAR2
     POP	XAR3
     POP	XAR4
     POP	XAR5
     POP	XAR6
     POP	XAR7
     IRET
	.end

⌨️ 快捷键说明

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