学习ARM开发(23)

三个任务准备与运行结果

 

下来看看创建任务和任运的栈空间怎么样的,以及运行输出。

Made in china by UCSDN(caijunsheng)

 

Lichee 1.0.0 (Mar 12 2006 - 20:51:12)

 

Lichee RTOS code: 0C100000 -> 0C1021EC  BSS: -> 0C102228

上面这句说明执行代码开始位置和结束位置,以及全局数据的结束位置。

 

Init Finish!

这里就是初始化任务完成。

pTask=C102234

这里就分配第一个IDLE任务内存位置。

pTask->pStackStart=C10225C

这个是任务的栈底的位置。

pTask->pStackTop=C10229C

这个是任务的栈顶位置。

pTask->pStackTop=C10225C

这里压入16个寄存器后栈位置。

 

Head

这里添加到双向链表头。

TaskIdle Finish

IDLE任务初始化完成。

以下是任务一初始化:

pTask=C1022A8

pTask->pStackStart=C1022D0

pTask->pStackTop=C102310

pTask->pStackTop=C1022D0

 

Tail

TaskTest1 Finish

 

以下是任务二初始化:

pTask=C10231C

pTask->pStackStart=C102344

pTask->pStackTop=C102384

pTask->pStackTop=C102344

 

Tail

TaskTest2 Finish

所有任务创建完成。

Task Create Finish

从第一个任务开始运行。

g_pCurrentTask = C102234

以后是运行任务输出:

TaskIdle

TaskTest1

TaskTest2

TaskTest1

TaskTest2

TaskTest1

TaskTest2

TaskTest1

TaskTest2

TaskTest1

TaskTest2

你可能感兴趣的:(ARM)