|
我用的是omapl138开发板。当我运行ad7606_dsp的demo程序的时候,同时在arm端运行watchdog程序,发现一旦打开watchdog设备文件后,dsp端的计时器就停止工作了。dsp端的配置文件是部分内容是这样的3 @) ^* \ Z+ e0 ~8 F* E
/* configure SysBios to use the lower half of Timer 1 */
; c( M* U8 g5 v; M- vvar Timer = xdc.useModule('ti.sysbios.timers.timer64.Timer');! I( \0 Z3 S5 O& ~: H# B; z# h
var Clock = xdc.useModule('ti.sysbios.knl.Clock');' |6 m7 I. F$ u9 u2 N
Timer.timerSettings[1].master = true;0 f3 M9 t9 \0 D7 E) l' p. t5 r; D
Timer.defaultHalf = Timer.Half_LOWER;1 d- {5 q5 c W7 h! d" A
Clock.timerId = 1;* K+ y, O( [1 k; `; w2 n( ]
Clock.tickPeriod = 5; //5us. k6 e( y" R3 O: n6 w. j/ s
arm端的watchdog程序和dsp端的计时器发生冲突了么?他们是共用了一个计时器么?这个cpu上一共几个定时器,怎么使用才能避免冲突呢?
7 I; Z. ^$ G8 C; Y k+ v我将Clock.timerId 分别改成0 、2 、3,结果发现只有改成3的时候才可以,为什么呢?还有,我在使用Clock_create()的时候,我并没有% L, `+ `6 {9 l+ G1 o. u1 d# F
指定使用哪个timer,难道是默认的使用Clock.timeId指定的timer吗?这样一来不就只能在DSP中使用同一个timer了?我要是想同时使用其他的timer该怎么办呢?
: F, U3 Z* ^2 `7 l$ H: g' e! v大神们! |
|