|
我用的是omapl138开发板。当我运行ad7606_dsp的demo程序的时候,同时在arm端运行watchdog程序,发现一旦打开watchdog设备文件后,dsp端的计时器就停止工作了。dsp端的配置文件是部分内容是这样的
+ \6 t1 E; X3 p/* configure SysBios to use the lower half of Timer 1 */ S, Y& ~- i6 I" l( y, [: d6 f
var Timer = xdc.useModule('ti.sysbios.timers.timer64.Timer');
, S) p! l8 y+ y3 ]9 _5 K8 b& ]9 Mvar Clock = xdc.useModule('ti.sysbios.knl.Clock');
* [7 M" q: F8 U# z& y6 N# nTimer.timerSettings[1].master = true;4 j9 U& M% H8 Y g7 s- Z8 Y1 x
Timer.defaultHalf = Timer.Half_LOWER;
9 M9 @, k( E2 pClock.timerId = 1;. w4 d v; G# M: ~6 a
Clock.tickPeriod = 5; //5us
' p' ?* c2 w# ?6 F* a- R: parm端的watchdog程序和dsp端的计时器发生冲突了么?他们是共用了一个计时器么?这个cpu上一共几个定时器,怎么使用才能避免冲突呢?, V0 m! u* _5 A" J. s; ]
我将Clock.timerId 分别改成0 、2 、3,结果发现只有改成3的时候才可以,为什么呢?还有,我在使用Clock_create()的时候,我并没有% U7 N/ N3 }- W0 p6 r& @
指定使用哪个timer,难道是默认的使用Clock.timeId指定的timer吗?这样一来不就只能在DSP中使用同一个timer了?我要是想同时使用其他的timer该怎么办呢?
, A% k3 d/ Q0 d2 M大神们!![](static/image/smiley/default/cry.gif) |
|