|
|
我用的是omapl138开发板。当我运行ad7606_dsp的demo程序的时候,同时在arm端运行watchdog程序,发现一旦打开watchdog设备文件后,dsp端的计时器就停止工作了。dsp端的配置文件是部分内容是这样的2 B2 N! F/ ~: D$ z. \9 j! K
/* configure SysBios to use the lower half of Timer 1 */9 ?, x3 U8 G% _1 |, K$ |2 G
var Timer = xdc.useModule('ti.sysbios.timers.timer64.Timer');/ @, t7 D W& Y) F% H
var Clock = xdc.useModule('ti.sysbios.knl.Clock');- M, N9 D; @0 @* F$ h% r
Timer.timerSettings[1].master = true;
. g8 N4 A" d e; k8 p1 PTimer.defaultHalf = Timer.Half_LOWER;
; g q" D8 M3 ~* r# D9 b$ }4 sClock.timerId = 1;& }' \4 ]4 y! _& R2 d
Clock.tickPeriod = 5; //5us( I3 [$ i: |/ Y4 a. }
arm端的watchdog程序和dsp端的计时器发生冲突了么?他们是共用了一个计时器么?这个cpu上一共几个定时器,怎么使用才能避免冲突呢?
& W3 P# g" p: Y' C我将Clock.timerId 分别改成0 、2 、3,结果发现只有改成3的时候才可以,为什么呢?还有,我在使用Clock_create()的时候,我并没有
! {- q: T7 ] _# L指定使用哪个timer,难道是默认的使用Clock.timeId指定的timer吗?这样一来不就只能在DSP中使用同一个timer了?我要是想同时使用其他的timer该怎么办呢?1 @2 W) B9 w) S6 w* t& U
大神们! |
|