嵌入式开发者社区
标题:
定时器资源分配和使用问题
[打印本页]
作者:
importantlife
时间:
2016-8-26 11:17
标题:
定时器资源分配和使用问题
我用的是omapl138开发板。当我运行ad7606_dsp的demo程序的时候,同时在arm端运行watchdog程序,发现一旦打开watchdog设备文件后,dsp端的计时器就停止工作了。dsp端的配置文件是部分内容是这样的
# B! M$ U3 m# r% X0 S( ]1 x$ c
/* configure SysBios to use the lower half of Timer 1 */
i3 f* x# ^' }2 W0 F) H
var Timer = xdc.useModule('ti.sysbios.timers.timer64.Timer');
+ L' u1 K- T, A- S( i' t9 e
var Clock = xdc.useModule('ti.sysbios.knl.Clock');
4 S: d, h% M" g- p, F
Timer.timerSettings[1].master = true;
4 K+ n: W! w" U/ t
Timer.defaultHalf = Timer.Half_LOWER;
+ W" u' H+ A4 ?
Clock.timerId = 1;
7 b3 f3 r3 `& t1 ^; v
Clock.tickPeriod = 5; //5us
g1 ~: Q$ T. e, K" R
arm端的watchdog程序和dsp端的计时器发生冲突了么?他们是共用了一个计时器么?这个cpu上一共几个定时器,怎么使用才能避免冲突呢?
' X5 U- i9 X, ~" H
我将Clock.timerId 分别改成0 、2 、3,结果发现只有改成3的时候才可以,为什么呢?还有,我在使用Clock_create()的时候,我并没有
6 J: O _$ u: X' w2 a6 i
指定使用哪个timer,难道是默认的使用Clock.timeId指定的timer吗?这样一来不就只能在DSP中使用同一个timer了?我要是想同时使用其他的timer该怎么办呢?
. v0 I' r6 k3 Z9 Q9 D% @# B1 a4 {
谢谢!
' |: a$ [! k) J$ |& Z" X0 b
" Q/ I4 [; X4 W' A) G/ H' }9 _7 a
& x! F/ ]; z" k
# G% R: o5 a# Z2 x7 y# W
% o1 M3 U0 ] I; }4 w1 }/ e
作者:
希望缄默
时间:
2016-8-29 17:16
CPU 支持四个
: S4 \3 Q' W9 p
ARM Linux
" u% ^; C9 n) }& @+ _1 `
定时器 0 为系统提供时间基准
9 }8 c# w9 F. Z- @5 ~: J+ c$ O
定时器 1 看门狗定时器
1 w) F' m5 Q2 }& o, Z! O
DSP SYS/BIOS
; m! [! ^! a3 ~* v1 \9 a
Clock.timerId 为系统提供时间基准
* s/ y2 Y1 X* P4 J- t; j
如果定时器 2 不能用可能是被占用了
; a# R* U* W/ ]
* y! ~3 P8 a' H2 R1 l
定时器都是 64位的 可以拆成两个 32位使用
欢迎光临 嵌入式开发者社区 (https://www.51ele.net/)
Powered by Discuz! X3.4