|
我用的是omapl138开发板。当我运行ad7606_dsp的demo程序的时候,同时在arm端运行watchdog程序,发现一旦打开watchdog设备文件后,dsp端的计时器就停止工作了。dsp端的配置文件是部分内容是这样的 N/ ~" p% U9 |0 ~7 G
/* configure SysBios to use the lower half of Timer 1 */ t2 z- q! {# X9 [6 r
var Timer = xdc.useModule('ti.sysbios.timers.timer64.Timer');
" M! ]3 ?3 d( t& }7 \7 _/ |1 G, rvar Clock = xdc.useModule('ti.sysbios.knl.Clock');. n b1 c! u: d6 ]
Timer.timerSettings[1].master = true; k$ W, a, _1 d* [2 H+ k0 A4 v: ]) [
Timer.defaultHalf = Timer.Half_LOWER;
3 T* R7 D& ?/ W% T8 nClock.timerId = 1;
" l* v$ n& K j, |0 B2 a5 FClock.tickPeriod = 5; //5us
5 F8 x4 w0 C) W. earm端的watchdog程序和dsp端的计时器发生冲突了么?他们是共用了一个计时器么?这个cpu上一共几个定时器,怎么使用才能避免冲突呢?* X. p2 Y9 g9 F& R- J
我将Clock.timerId 分别改成0 、2 、3,结果发现只有改成3的时候才可以,为什么呢?还有,我在使用Clock_create()的时候,我并没有8 ^. ~6 g/ ~; j3 i$ s1 ~! i2 `
指定使用哪个timer,难道是默认的使用Clock.timeId指定的timer吗?这样一来不就只能在DSP中使用同一个timer了?我要是想同时使用其他的timer该怎么办呢?3 ~: f/ C% }: W/ Y0 C$ e. Q. T
谢谢!
0 M( M8 |- N& l( d ]7 k g
/ q6 F4 A+ y, P9 ]& A5 y" v& Z( F& X& h& a* ?9 G
: z4 p- o# {# ?, w9 l: O9 e
$ a( i1 S" T4 v7 | |
|