|
我用的是omapl138开发板。当我运行ad7606_dsp的demo程序的时候,同时在arm端运行watchdog程序,发现一旦打开watchdog设备文件后,dsp端的计时器就停止工作了。dsp端的配置文件是部分内容是这样的
1 O1 b3 J2 H' |' c/* configure SysBios to use the lower half of Timer 1 */
) |: j- e) _/ ^/ s( e; Q+ m' Zvar Timer = xdc.useModule('ti.sysbios.timers.timer64.Timer');
: J6 e; _8 x# ~; }0 F: lvar Clock = xdc.useModule('ti.sysbios.knl.Clock');! B) I7 \; X& R6 I' _
Timer.timerSettings[1].master = true;8 ]# @( U3 b/ T. n2 l) Y9 f
Timer.defaultHalf = Timer.Half_LOWER;+ \1 w5 X, V# _# k7 I, e- m
Clock.timerId = 1;
4 Q" U0 ?5 S* ~Clock.tickPeriod = 5; //5us
- M2 {' t# I) b* P. r8 [arm端的watchdog程序和dsp端的计时器发生冲突了么?他们是共用了一个计时器么?这个cpu上一共几个定时器,怎么使用才能避免冲突呢?
; \' E9 H+ a% k3 R. R我将Clock.timerId 分别改成0 、2 、3,结果发现只有改成3的时候才可以,为什么呢?还有,我在使用Clock_create()的时候,我并没有
. ?) J: T5 |4 x C* D指定使用哪个timer,难道是默认的使用Clock.timeId指定的timer吗?这样一来不就只能在DSP中使用同一个timer了?我要是想同时使用其他的timer该怎么办呢?
9 K0 s; r7 S! s. ?$ ^7 ^+ C5 b谢谢!2 h% M5 ?- H3 F1 z; M
* ]/ M) r& _6 R! P
. F, X/ L% p7 i4 o+ ?
# A. t3 c7 M, V9 J) F4 M5 k% `" j7 s
|
|