我现在用的是cw4.7里的PE
想记录中断发生了多长时间,中断名为EInt1_OnInterrupt 我在个中断发生后,用如下方式实现记录其运行了多久.如果这段代码(如下) FC161_Reset(); // reset the counter Cpu_Delay100US(500);//延迟,做中断处理等等
if(FC161_GetTimeUS(&bbb) == ERR_OK) {//记录从reset到当前的时间
ccc = bbb / 60000.0; 放在main()里,是可以记录运行时间的,即bbb里有数据.但是如果把上述代码放到名为EInt1_OnInterrupt的中断中,同样的代码,bbb却始终为0. 是不是在中断中不能有类似FC161_Reset()之类的函数呢?还是要进行别的什么设置呢?
这是含有FC161_Reset()等语句的中断函数void EInt1_OnInterrupt(void) { /* place your EInt1 interrupt procedure body here */
FC161_Reset(); // reset the counter Cpu_Delay100US(500);//延迟,做中断处理等等
if(FC161_GetTimeUS(&bbb) == ERR_OK) {//记录从reset到当前的时间
ccc = bbb / 60000.0; }
gUOrpY9y.rar (819.03 KB)
[此贴子已经被作者于2008-12-26 12:14:07编辑过] |