我在CCS中建了一个工程,在某个C文件件里有一句 asm("pop r4");,然后编译器提示非法的指令,是在CCS里没办法使用汇编吗?
This thread has been locked.
If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.
我在CCS中建了一个工程,在某个C文件件里有一句 asm("pop r4");,然后编译器提示非法的指令,是在CCS里没办法使用汇编吗?
我是打算写一个简单的任务切换程序,教学用,下面是一个任务切换的函数,里面的每一句指令都提示非法
void ostaskch()
{
asm("push sr");
asm("push r4");
asm("push r5");
asm("push r6");
asm("push r7");
asm("push r8");
asm("push r9");
asm("push r10");
asm("push r11");
asm("push r12");
asm("push r13");
asm("push r14");
asm("push r15");
asm("mov _Sys_CurrentTask,r4");
asm("mov sp,0(r4)");
_Sys_CurrentTask=_Sys_CHTask;
asm("mov _Sys_CurrentTask,r4");
asm("mov 0(r4),sp");
asm("pop r15");
asm("pop r14");
asm("pop r13");
asm("pop r12");
asm("pop r11");
asm("pop r10");
asm("pop r9");
asm("pop r8");
asm("pop r7");
asm("pop r6");
asm("pop r5");
asm("pop r4");
asm("pop sr");
}