|
我用的是omapl138开发板。当我运行ad7606_dsp的demo程序的时候,同时在arm端运行watchdog程序,发现一旦打开watchdog设备文件后,dsp端的计时器就停止工作了。dsp端的配置文件是部分内容是这样的0 f4 R$ e; B" \5 _) ~3 H
/* configure SysBios to use the lower half of Timer 1 */
. L& V. H `; u1 ]var Timer = xdc.useModule('ti.sysbios.timers.timer64.Timer');' ^/ `, E0 M) T# p5 b1 @. d& ?4 W
var Clock = xdc.useModule('ti.sysbios.knl.Clock');" {2 L+ D& Q9 y, y% x" V
Timer.timerSettings[1].master = true;
! ^1 I3 X& w, C" i7 |* }: M1 KTimer.defaultHalf = Timer.Half_LOWER;, m' g" o9 U" m3 E
Clock.timerId = 1;
7 ~6 ^& x% k- |8 V4 Z0 V; |9 aClock.tickPeriod = 5; //5us4 W3 D" w; I O9 c. \* n1 X
arm端的watchdog程序和dsp端的计时器发生冲突了么?他们是共用了一个计时器么?这个cpu上一共几个定时器,怎么使用才能避免冲突呢?. G4 O" l! E+ d: H
我将Clock.timerId 分别改成0 、2 、3,结果发现只有改成3的时候才可以,为什么呢?还有,我在使用Clock_create()的时候,我并没有& w" O+ w% K* F& }% u0 T' J: k
指定使用哪个timer,难道是默认的使用Clock.timeId指定的timer吗?这样一来不就只能在DSP中使用同一个timer了?我要是想同时使用其他的timer该怎么办呢?
Z, d9 s, e( A1 p3 k大神们! |
|