|
我用的是omapl138开发板。当我运行ad7606_dsp的demo程序的时候,同时在arm端运行watchdog程序,发现一旦打开watchdog设备文件后,dsp端的计时器就停止工作了。dsp端的配置文件是部分内容是这样的
) c" e }' b" ]3 I6 \/* configure SysBios to use the lower half of Timer 1 */! b1 b: u0 V1 U4 b; t/ r, I* j/ I
var Timer = xdc.useModule('ti.sysbios.timers.timer64.Timer');
. K$ ]# {" N$ J' U3 |var Clock = xdc.useModule('ti.sysbios.knl.Clock');. ?, O& _* t5 j
Timer.timerSettings[1].master = true;
) r" j# n6 I2 N7 B# }$ Z/ FTimer.defaultHalf = Timer.Half_LOWER;$ ?1 d4 G. T; t1 A" A. ~4 Z" K
Clock.timerId = 1;0 D9 F5 ~7 E+ H5 z
Clock.tickPeriod = 5; //5us5 c3 ^" z) x( S9 n( r- f" W
arm端的watchdog程序和dsp端的计时器发生冲突了么?他们是共用了一个计时器么?这个cpu上一共几个定时器,怎么使用才能避免冲突呢?
- N( s, w1 I' f9 s9 b. ]4 x6 E7 F我将Clock.timerId 分别改成0 、2 、3,结果发现只有改成3的时候才可以,为什么呢?还有,我在使用Clock_create()的时候,我并没有
6 C2 z; J. H- x% S" |指定使用哪个timer,难道是默认的使用Clock.timeId指定的timer吗?这样一来不就只能在DSP中使用同一个timer了?我要是想同时使用其他的timer该怎么办呢?
! S- n8 B7 y$ G! `- ~5 U谢谢!: H0 @5 p2 Z' \1 D; V" u
( ?; d; h I# R5 n7 t7 W$ y5 r* J- Z5 s* n& b
; s# r- I, F) j8 q3 M4 L( i+ o5 x+ S! W1 T
|
|