BIOS\"任务\"对象的问题.

fangyu_99   2007-7-27 05:28 楼主
请教各位:
     在BIOS中,我用TSK0调用函数test(),硬件中断INT1调用T0ISR().运行程序后,程序一直进入T0ISR(),而不调用\"任务\"对象.不应该是在两次中断之间的时间里,会调用TSK0吗?或者是需要什么API函数调用?
部分程序如下:
#include \"DSP28_Device.h\"
#include \"volumecfg.h\"
Uint16 i=0,m=0;
void main(void)
{
  InitCpuTimers();
  ConfigCpuTimer(&CpuTimer0,150,1000000);
  InitPieCtrl();
  PieCtrl.PIEIER1.bit.INTx7=1;
  IER|=M_INT1;
  ERTM;
  StartCpuTimer0();
  return;
}

void T0ISR(void)
{
GpioDataRegs.GPADAT.bit.GPIOA4=i;
i=!i;
PieCtrl.PIEACK.all = 0xFFFF;
return;
}

void test()
{
  for(;
  {
    m++;
  }
}

回复评论 (8)

如果不加HWI中断,task运行么?
点赞  2007-7-28 03:27
能够运行.
在中断发生之前能够运行到TSK0
点赞  2007-7-31 02:43
是不是中断频度太快了
点赞  2007-7-31 04:10
DSP/BIOS中HWI中断服务的设置是使用的dispatch么。
点赞  2007-7-31 05:31
请问怎么设置啊?我在书上没看到
点赞  2007-7-31 05:51
在\"Use Dispatcher\"前打勾吗?
我选中过了.
点赞  2007-7-31 05:56
外部数组是什么意思?
extern?
点赞  2007-7-30 10:55
如果你给数组设置了初始值的话,初始值放在cinit中,数组本身放在bss中。如果你定义数组为const的话,数组放在const中
点赞  2007-7-31 05:35
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 京公网安备 11010802033920号
    写回复