|
我用的是omapl138开发板。当我运行ad7606_dsp的demo程序的时候,同时在arm端运行watchdog程序,发现一旦打开watchdog设备文件后,dsp端的计时器就停止工作了。dsp端的配置文件是部分内容是这样的3 s3 A4 y% u2 z- w, [1 D/ `
/* configure SysBios to use the lower half of Timer 1 */9 R: f0 ]2 }1 X- M, m
var Timer = xdc.useModule('ti.sysbios.timers.timer64.Timer');, o6 D; |# ^; Y( r$ V1 b8 M0 ~
var Clock = xdc.useModule('ti.sysbios.knl.Clock');% S1 K7 W. l. J
Timer.timerSettings[1].master = true;
6 Z3 I1 ^0 _. |' HTimer.defaultHalf = Timer.Half_LOWER;
7 B: x& }/ y" h9 E" v8 R/ OClock.timerId = 1;
3 I# @) T: e; [Clock.tickPeriod = 5; //5us5 W6 c2 z' y9 L. m9 U8 S$ Z1 u
arm端的watchdog程序和dsp端的计时器发生冲突了么?他们是共用了一个计时器么?这个cpu上一共几个定时器,怎么使用才能避免冲突呢?
$ f+ |: x: w! |2 q, M我将Clock.timerId 分别改成0 、2 、3,结果发现只有改成3的时候才可以,为什么呢?还有,我在使用Clock_create()的时候,我并没有: r# X' S: z7 C |& c
指定使用哪个timer,难道是默认的使用Clock.timeId指定的timer吗?这样一来不就只能在DSP中使用同一个timer了?我要是想同时使用其他的timer该怎么办呢?
, ]5 Z3 \9 k! k, r- B0 b7 |* I! [谢谢!
% d' p, _4 s3 H
; p) `% N" i; T9 I- Y6 Z/ g: Z+ j7 Q2 e/ \2 b$ v
5 J# Z& U/ u8 I' E5 T6 M6 X* p: N$ A c( X
|
|