dsp2812 的ccs 编程中主函数里的这条语句 for(;;) { } 的作用是什么?不写这句会有什么影响?

dsp2812 的ccs 编程中主函数里的这条语句 for(;;) { } 的作用是什么?不写这句会有什么影响?

这是个死循环,意思是让程序不断运行。如果没有这个死循环,程序运行到main函数的“}”处,程序就会运行结束。追问

可不可以这样理解:1.主函数的结尾处没有这个死循环,程序运行到main函数的“}”处,主函数就会运行结束。而这会导致DSP的CPU不能再去响应接下来的中断事件了?2.为了使程序不断运行,才让程序进入死循环,但程序进入死循环了并不会影响CPU去响应中断事件的发生,因为这两个事件在CPU的处理机制上是相互独立的?

追答

可以这样理解,DSP在没有DSP/BIOS下,用户写的程序从main函数开始执行,执行完整个main函数后,整个程序也就全部执行完毕。CPU自然也不会在去响应中断等事件。

温馨提示:答案为网友推荐,仅供参考
第1个回答  推荐于2017-09-15
for(;;){}
这是C语言的for循环语句呀,这句相当于while(1){}
一个无限循环的语句。
正常的使用是 举个例子,
int i;
for(i =0; i<10; i++) //
{
//语句块
.....
}
可以看一下C语言的书,这是C编程最基本的东西,不会怎么编程呢本回答被网友采纳
第2个回答  2017-09-12
在 DSP 中 printf 是非常占资源的指令,没有打印的原因可能是由于你没有设栈 (heap) ,在任意一个存储空间设上就OK了。建议你使用 BIOS 的LOG_printf 指令,这样就非常节省资源,可以通过菜单中 DPS/BIOS -> massage LOG 观察。另外,printf 和 LOG_printf 都是仿真时候用的