|
|
我用的是omapl138开发板。当我运行ad7606_dsp的demo程序的时候,同时在arm端运行watchdog程序,发现一旦打开watchdog设备文件后,dsp端的计时器就停止工作了。dsp端的配置文件是部分内容是这样的5 S# c, v/ U$ h
/* configure SysBios to use the lower half of Timer 1 */; ~7 E) @2 b: h# d5 ~ O: C
var Timer = xdc.useModule('ti.sysbios.timers.timer64.Timer');- t" d d: L7 U7 l2 @) C3 w" e: J# Z1 K
var Clock = xdc.useModule('ti.sysbios.knl.Clock');0 P0 p v2 \0 K$ u. o; O
Timer.timerSettings[1].master = true;
( G0 l+ j x& _' uTimer.defaultHalf = Timer.Half_LOWER;# z( M! K: r# z- _* p5 F9 y) O
Clock.timerId = 1;9 t& |2 [# t( l" P; g- u) `
Clock.tickPeriod = 5; //5us) W) z+ {. i* c) d* @. s* T
arm端的watchdog程序和dsp端的计时器发生冲突了么?他们是共用了一个计时器么?这个cpu上一共几个定时器,怎么使用才能避免冲突呢?% |& O1 N I3 F8 s
我将Clock.timerId 分别改成0 、2 、3,结果发现只有改成3的时候才可以,为什么呢?还有,我在使用Clock_create()的时候,我并没有/ t1 z5 b, O3 C, y# d5 m
指定使用哪个timer,难道是默认的使用Clock.timeId指定的timer吗?这样一来不就只能在DSP中使用同一个timer了?我要是想同时使用其他的timer该怎么办呢?+ @+ J& ~( {. B
谢谢!. B, c- ~0 S* D8 N8 Y& ]
# m9 s+ L" d& c$ i
- f+ O4 N" w9 X7 y) M8 u+ W B @5 D, G' \6 ~# |6 f3 E' h& Q P8 ]+ c
- G/ a+ E# V" c1 [0 j |
|