|
我用的是omapl138开发板。当我运行ad7606_dsp的demo程序的时候,同时在arm端运行watchdog程序,发现一旦打开watchdog设备文件后,dsp端的计时器就停止工作了。dsp端的配置文件是部分内容是这样的
" T. u. ?' F8 \ H/* configure SysBios to use the lower half of Timer 1 */, e: p* }$ L5 [1 s+ A+ X
var Timer = xdc.useModule('ti.sysbios.timers.timer64.Timer');
* e0 a5 a& ~% t' }# B1 Z, p* [4 u2 ivar Clock = xdc.useModule('ti.sysbios.knl.Clock');+ W4 n2 [; y: M8 Q; _& A
Timer.timerSettings[1].master = true;& A$ m7 J# u! Z* \3 @4 L
Timer.defaultHalf = Timer.Half_LOWER; A! g, z# Q, [1 f9 V& J
Clock.timerId = 1;8 G, k7 R+ r. i2 q0 J
Clock.tickPeriod = 5; //5us* w0 v6 ^7 n0 D: \5 C# m7 }" p# | K# U
arm端的watchdog程序和dsp端的计时器发生冲突了么?他们是共用了一个计时器么?这个cpu上一共几个定时器,怎么使用才能避免冲突呢?6 P* i/ b0 e- ]! W6 A# O/ K' D
我将Clock.timerId 分别改成0 、2 、3,结果发现只有改成3的时候才可以,为什么呢?还有,我在使用Clock_create()的时候,我并没有
9 N- S& V6 \4 h) X指定使用哪个timer,难道是默认的使用Clock.timeId指定的timer吗?这样一来不就只能在DSP中使用同一个timer了?我要是想同时使用其他的timer该怎么办呢?
3 O! j: Q; ]% B1 f: l! L谢谢!7 z* L# R3 f4 V2 j
- @) m! d5 Z+ E% P/ a' J: V
( X# W/ L. \9 E) ?
" A% M# b$ T# f, d) d- Y
- `* x" H6 d# B/ e* {% k |
|