|
我用的是omapl138开发板。当我运行ad7606_dsp的demo程序的时候,同时在arm端运行watchdog程序,发现一旦打开watchdog设备文件后,dsp端的计时器就停止工作了。dsp端的配置文件是部分内容是这样的
7 z5 Y9 w* Z, N7 O D, y/* configure SysBios to use the lower half of Timer 1 */, ~5 o6 D ^' ] l
var Timer = xdc.useModule('ti.sysbios.timers.timer64.Timer');7 ?9 g( P5 H* O7 c, d" I3 h2 K8 m" n
var Clock = xdc.useModule('ti.sysbios.knl.Clock');
' V. b1 V7 B1 \' W) L, JTimer.timerSettings[1].master = true;+ i; v' k' N% E/ ^
Timer.defaultHalf = Timer.Half_LOWER;
' t8 `' U5 c3 ^/ U2 j5 i( c/ sClock.timerId = 1;; b2 m$ Y' z- F. ~
Clock.tickPeriod = 5; //5us% a# d8 G" e; \7 M8 C" ~2 P" Z% k; y
arm端的watchdog程序和dsp端的计时器发生冲突了么?他们是共用了一个计时器么?这个cpu上一共几个定时器,怎么使用才能避免冲突呢?( X) b- K. m0 I; \$ o
我将Clock.timerId 分别改成0 、2 、3,结果发现只有改成3的时候才可以,为什么呢?还有,我在使用Clock_create()的时候,我并没有% S( y$ f3 r4 f3 b
指定使用哪个timer,难道是默认的使用Clock.timeId指定的timer吗?这样一来不就只能在DSP中使用同一个timer了?我要是想同时使用其他的timer该怎么办呢?
5 @" ^( H- Z" R3 v8 d) }: N. l谢谢!
# a! n9 E1 u: ?) o4 n; u* @+ S4 j m1 K% q' |( {/ S6 J5 Q5 w- z- S' d& t
4 p# X& ` {$ d! ]6 x/ M: X N/ @8 ?1 B1 x9 Y) i) T
( T# t' I6 @4 b8 T+ G |
|