|
我用的是omapl138开发板。当我运行ad7606_dsp的demo程序的时候,同时在arm端运行watchdog程序,发现一旦打开watchdog设备文件后,dsp端的计时器就停止工作了。dsp端的配置文件是部分内容是这样的
" E7 u+ R/ h; c" ?: z1 m/* configure SysBios to use the lower half of Timer 1 */6 E* e, ~3 d6 I+ s' ~
var Timer = xdc.useModule('ti.sysbios.timers.timer64.Timer');
6 U& d; d5 A- ^5 |( X. Qvar Clock = xdc.useModule('ti.sysbios.knl.Clock');
! q& E' n" m1 g, XTimer.timerSettings[1].master = true;
% Q6 o; M2 `/ c# h2 A5 iTimer.defaultHalf = Timer.Half_LOWER;
^! C; J# Y% z, o6 Q: dClock.timerId = 1;
$ M- a; c0 G4 l3 @& k" c PClock.tickPeriod = 5; //5us
) ]" u7 ^7 s( i# Darm端的watchdog程序和dsp端的计时器发生冲突了么?他们是共用了一个计时器么?这个cpu上一共几个定时器,怎么使用才能避免冲突呢?
1 ?; f. V+ B* E我将Clock.timerId 分别改成0 、2 、3,结果发现只有改成3的时候才可以,为什么呢?还有,我在使用Clock_create()的时候,我并没有
) s3 a5 n% @# B( J8 g8 Y指定使用哪个timer,难道是默认的使用Clock.timeId指定的timer吗?这样一来不就只能在DSP中使用同一个timer了?我要是想同时使用其他的timer该怎么办呢?
8 R, T& b5 D6 h( k. h/ ^1 a8 l谢谢!8 o' H& y6 U5 V
# |- n' U" c4 A
) Z4 |, L; U- R& l
4 d9 [# w( G6 D
0 |5 l. a) c5 e) ?6 Z |
|