|
|
我用的是omapl138开发板。当我运行ad7606_dsp的demo程序的时候,同时在arm端运行watchdog程序,发现一旦打开watchdog设备文件后,dsp端的计时器就停止工作了。dsp端的配置文件是部分内容是这样的
6 N- n1 l: O6 K% D# N& m% X. C: P/* configure SysBios to use the lower half of Timer 1 */, d3 t$ M6 [7 j; w f6 D
var Timer = xdc.useModule('ti.sysbios.timers.timer64.Timer');
3 ^+ D; d" s& B( n! S9 ivar Clock = xdc.useModule('ti.sysbios.knl.Clock');
& y5 i& K- m* c) s( OTimer.timerSettings[1].master = true;0 i1 U, \" h; g& l& D* b, n
Timer.defaultHalf = Timer.Half_LOWER;
; l6 R2 T7 C' ^) O! d! i2 U. ?Clock.timerId = 1;
1 r/ D- E6 B7 D) P6 I% sClock.tickPeriod = 5; //5us
" ?5 b+ `: |, s" H7 y darm端的watchdog程序和dsp端的计时器发生冲突了么?他们是共用了一个计时器么?这个cpu上一共几个定时器,怎么使用才能避免冲突呢?
. k5 X, D: D* B5 E我将Clock.timerId 分别改成0 、2 、3,结果发现只有改成3的时候才可以,为什么呢?还有,我在使用Clock_create()的时候,我并没有2 \% b; e' P5 \ @- L/ M7 _/ M
指定使用哪个timer,难道是默认的使用Clock.timeId指定的timer吗?这样一来不就只能在DSP中使用同一个timer了?我要是想同时使用其他的timer该怎么办呢?
2 S" U1 W) M {! B7 N& a大神们! |
|