我想将给定任务的初始程序计数器放入任务自己的堆栈中。这样我就可以恢复堆栈上下文以开始运行任务。
有没有人有很好的资源或知道如何在 C 中做到这一点?
到目前为止,我已经为给定任务分配了一个堆栈。
这是我在汇编中找到的一个示例:
;program counter initialization for task2
ldi r16, LOW(TASK2)
sts TASK2_STACK_BEGIN, r16
ldi r16, HIGH(TASK2)
sts TASK2_STACK_BEGIN-1, r16
低字节首先被压入 TASK2 的堆栈,然后是高字节。