|
|
我用的是omapl138开发板。当我运行ad7606_dsp的demo程序的时候,同时在arm端运行watchdog程序,发现一旦打开watchdog设备文件后,dsp端的计时器就停止工作了。dsp端的配置文件是部分内容是这样的9 a! d2 a# S" w- `; g. v7 g8 k# N1 i
/* configure SysBios to use the lower half of Timer 1 */
! ]6 |% v6 ]( q: {4 v: L# x) fvar Timer = xdc.useModule('ti.sysbios.timers.timer64.Timer');0 h) z2 j( L4 `6 M0 D/ {, M
var Clock = xdc.useModule('ti.sysbios.knl.Clock');
7 u2 U/ z8 M; K4 s( g! O( s7 CTimer.timerSettings[1].master = true;
7 @0 W3 x3 `; g" ?) f( c2 Z1 _+ |( mTimer.defaultHalf = Timer.Half_LOWER;
( ~* E! r8 Y0 {' r( Q5 v/ _" }. [# S# BClock.timerId = 1;. `# Z! z1 `6 n; o
Clock.tickPeriod = 5; //5us
( S; l. O! v, f% N" p. k8 m. s. |arm端的watchdog程序和dsp端的计时器发生冲突了么?他们是共用了一个计时器么?这个cpu上一共几个定时器,怎么使用才能避免冲突呢?7 E5 x5 r2 Z0 A
我将Clock.timerId 分别改成0 、2 、3,结果发现只有改成3的时候才可以,为什么呢?还有,我在使用Clock_create()的时候,我并没有
# B8 V3 e4 j" n7 n指定使用哪个timer,难道是默认的使用Clock.timeId指定的timer吗?这样一来不就只能在DSP中使用同一个timer了?我要是想同时使用其他的timer该怎么办呢?
9 x3 b: M$ b f$ _3 I谢谢!6 B* B+ g/ n8 z) j
" S4 d7 g' {2 }2 Q9 u4 b. f
8 a# V, R3 E7 f" \
2 g) Y+ ^; A: F: Q) `
# R0 R, Z1 K: K* |& k% a) _1 z( z& R |
|