|
|
我用的是omapl138开发板。当我运行ad7606_dsp的demo程序的时候,同时在arm端运行watchdog程序,发现一旦打开watchdog设备文件后,dsp端的计时器就停止工作了。dsp端的配置文件是部分内容是这样的
6 i# C% B# E0 G9 V# `" v! h/* configure SysBios to use the lower half of Timer 1 */
: i/ b) `0 Q$ [var Timer = xdc.useModule('ti.sysbios.timers.timer64.Timer');/ q b4 ^# K2 C$ C
var Clock = xdc.useModule('ti.sysbios.knl.Clock');( q" A1 w& z; z4 l
Timer.timerSettings[1].master = true;. Z2 A" s) u- w' b: y; e5 _& d4 v$ O* b; F
Timer.defaultHalf = Timer.Half_LOWER;1 D7 w; n* O5 h, G3 a% E& _
Clock.timerId = 1;+ U/ V) x) U# ^" }4 h* o
Clock.tickPeriod = 5; //5us! L% H* n! X/ u1 G: ^5 S
arm端的watchdog程序和dsp端的计时器发生冲突了么?他们是共用了一个计时器么?这个cpu上一共几个定时器,怎么使用才能避免冲突呢?
" p/ C/ w: v, W4 x. f; [- Q我将Clock.timerId 分别改成0 、2 、3,结果发现只有改成3的时候才可以,为什么呢?还有,我在使用Clock_create()的时候,我并没有! U. Z7 h% M+ ]& y9 g% E4 z
指定使用哪个timer,难道是默认的使用Clock.timeId指定的timer吗?这样一来不就只能在DSP中使用同一个timer了?我要是想同时使用其他的timer该怎么办呢?) [, n% t/ l% [+ {( Y/ k8 I1 b6 a
大神们! |
|