|
我用的是omapl138开发板。当我运行ad7606_dsp的demo程序的时候,同时在arm端运行watchdog程序,发现一旦打开watchdog设备文件后,dsp端的计时器就停止工作了。dsp端的配置文件是部分内容是这样的5 q5 A' { a8 e' Y& f8 N
/* configure SysBios to use the lower half of Timer 1 */
* i* ~: T8 W _5 t4 K' Z [var Timer = xdc.useModule('ti.sysbios.timers.timer64.Timer');. t2 y; n& l4 J' r9 U8 m# N- q3 t
var Clock = xdc.useModule('ti.sysbios.knl.Clock');
: ^2 {5 N$ S; t \2 o3 YTimer.timerSettings[1].master = true;- g! K) ?6 b* ]: ~" T* ]% D2 X+ B
Timer.defaultHalf = Timer.Half_LOWER;
: u) s2 v, s, `/ n+ |! N$ O; xClock.timerId = 1;
4 C& S+ |4 f' L; H. tClock.tickPeriod = 5; //5us1 n: q6 L0 X7 x6 X$ j, X1 Q
arm端的watchdog程序和dsp端的计时器发生冲突了么?他们是共用了一个计时器么?这个cpu上一共几个定时器,怎么使用才能避免冲突呢? Y5 I6 T9 j% c3 c5 {: t; J x
我将Clock.timerId 分别改成0 、2 、3,结果发现只有改成3的时候才可以,为什么呢?还有,我在使用Clock_create()的时候,我并没有
0 I& E7 ?" G: {# |1 g指定使用哪个timer,难道是默认的使用Clock.timeId指定的timer吗?这样一来不就只能在DSP中使用同一个timer了?我要是想同时使用其他的timer该怎么办呢?
( B- m5 u! A3 p; l大神们! |
|