OSCtxSw
; Special optimised code below:
;1、根据任务栈结构,分别压栈,保存旧任务的现场
stmfd sp!,{lr} ; push pc (lr should be pushed in place of PC)
stmfd sp!,{r0-r12,lr} ; push lr & register file
mrs r4,cpsr
stmfd sp!,{r4} ; push current psr
mrs r4,spsr
stmfd sp!,{r4} ; push current spsr
; 2、OSPrioCur = OSPrioHighRdy
ldr r4,=OSPrioCur
ldr r5,=OSPrioHighRdy
ldrb r6,[r5]
strb r6,[r4]
; 3、Get current task TCB address:r5= OSTCBCur
ldr r4,=OSTCBCur; r4 = &OSTCBCur
ldr r5,[r4]
;4、OSTCBCur->OSTCBStkPtr = SP;
str sp,[r5] ; store sp in preempted tasks's TCB
bl OSTaskSwHook ; call Task Switch Hook
; 5、Get highest priority task TCB address:r6= OSTCBHighRdy
ldr r6,=OSTCBHighRdy
ldr r6,[r6]
; 6、SP = OSTCBHighRdy ->OSTCBStkPtr;
ldr sp,[r6] ; get new task's stack pointer
; 7、OSTCBCur = OSTCBHighRdy
str r6,[r4] ; set new current task TCB address
;8、根据任务栈结构,分别出栈,恢复新任务的现场
ldmfd sp!,{r4} ; pop new task's spsr
msr SPSR_cxsf,r4
ldmfd sp!,{r4} ; pop new task's psr
msr CPSR_cxsf,r4
ldmfd sp!,{r0-r12,lr,pc} ; pop new task's r0-r12,lr & pc
|
相关推荐
1.了解uCOS-II内核的主要结构。 2.掌握将uCOS-II内核移植到ARM920T处理器上的基本方法。 3. 将uCOS-II内核移植到ARM920T微处理器上。 4.编写两个简单任务,在超级终端上观察两个任务的切换。
ucos-II在ARM7上的移植代码(含详细注释)
UCOS-II在ARM上的移植源程序.rar
uCOS-II在ARM系统上的移植与实现
Micriμm uCos-II在Cortex-M3移植的详细说明
基于UCOS-II的多任务与系统时钟课程设计
Micrium_STM32F103ZE-SK_uCOS-II_官方版
《嵌入式实时操作系统ucos-II》中英文共有12章,和我手上《嵌入式实时操作系统ucos-II(第二版)》差了几张,在网上也没找到《嵌入式实时操作系统ucos-II(第二版)》的电子版,估计目前能找到的都是第一版吧 ...
uCOS-II-2.91 官方源码包 最新版本啦,里面还有详细的说明和帮助文档呢.
uCOS-II For ARM7 or ARM9
STM32平台移植uCOS-II详细说明 1. 建立工程所需的文件夹 建立文件夹uCOS-II-Port :工程根目录 建立文件夹uCOS-II-Port/App :存放用户应用程序相关 建立文件夹uCOS-II-Port/Bsp :存放开发板初始化驱动...
uCOS-ii移植的流程,按照教程,轻松移植ucosii
压缩包里分两部分即源码和例程,源码部分包含uCOS-II和uCOS-III的源码(不含port等文件夹,是移植时不需修改的源文件,版本:ucos-ii的v2.86和目前最新的v2.91、ucos-iii的v3.03),例程部分包含完整目录文件夹,有...
ucos-ii中文书(邵贝贝)PDF版.rar � � � � \SOFTWARE\uCOS-II 与 µ C/OS-II 相关的文件都放在这个目录下。 � � � � \SOFTWARE\uCOS-II\EX1_x86L 这个目录里包括例 1 的源代码 ( 参见 1.07, 例 1) ,可以...
将ucos-ii成功移植到LPC2148 ARM7并实现了LCD1602的驱动
内含代码详解,一部分的程序都有解释,以及实验的心得体会。
UCOS-II教程 一本完整的关于UCOS-II教程
文件为移植好的stm32 ucos-ii的keil4工程文件,移植日期2012年7月20日,各种移植源码均为最新版
最近将ucos-ii在ARM7(LPC2220)上移植一遍。 由于我们开发的目的是针对学生学习进行开发的,因此里面的注释很好,并配有书籍说明(ARM嵌入式接口技术应用.doc)。 在该书中详细讲解了移植全过程,我在此将源代码...