|
|
我用的是omapl138开发板。当我运行ad7606_dsp的demo程序的时候,同时在arm端运行watchdog程序,发现一旦打开watchdog设备文件后,dsp端的计时器就停止工作了。dsp端的配置文件是部分内容是这样的. _/ q; i1 F% E# B* t0 _: w
/* configure SysBios to use the lower half of Timer 1 */
: o, R, t! k# o+ M; K6 Nvar Timer = xdc.useModule('ti.sysbios.timers.timer64.Timer');
5 p; {, a3 R8 `4 }" W4 K$ Z, o5 Jvar Clock = xdc.useModule('ti.sysbios.knl.Clock');* R5 _8 t/ ~3 m! h
Timer.timerSettings[1].master = true;1 y% [6 y. [/ J- e) h
Timer.defaultHalf = Timer.Half_LOWER;" t2 x4 C! }9 k5 ?# w
Clock.timerId = 1;
' @! P( J9 _5 x8 o9 d& vClock.tickPeriod = 5; //5us2 W6 l C4 q: G F3 j0 d
arm端的watchdog程序和dsp端的计时器发生冲突了么?他们是共用了一个计时器么?这个cpu上一共几个定时器,怎么使用才能避免冲突呢?* |5 n+ R5 S$ N- _0 G* H
我将Clock.timerId 分别改成0 、2 、3,结果发现只有改成3的时候才可以,为什么呢?还有,我在使用Clock_create()的时候,我并没有
; ]1 L c/ v l. V$ S指定使用哪个timer,难道是默认的使用Clock.timeId指定的timer吗?这样一来不就只能在DSP中使用同一个timer了?我要是想同时使用其他的timer该怎么办呢?
: q2 K: }0 W8 z2 r% `大神们! |
|