嵌入式开发者社区
标题:
定时器资源分配和使用问题
[打印本页]
作者:
importantlife
时间:
2016-8-26 11:17
标题:
定时器资源分配和使用问题
我用的是omapl138开发板。当我运行ad7606_dsp的demo程序的时候,同时在arm端运行watchdog程序,发现一旦打开watchdog设备文件后,dsp端的计时器就停止工作了。dsp端的配置文件是部分内容是这样的
- d* ^% t! C Q5 r: `) E
/* configure SysBios to use the lower half of Timer 1 */
# H1 W& }+ B% G! E3 D
var Timer = xdc.useModule('ti.sysbios.timers.timer64.Timer');
3 K% j N+ u" R& t, ~4 g
var Clock = xdc.useModule('ti.sysbios.knl.Clock');
+ v4 q6 c( r6 Z& K& n" M
Timer.timerSettings[1].master = true;
( i+ o) a8 Q: b# c* K0 U. T
Timer.defaultHalf = Timer.Half_LOWER;
2 X: T9 f. g- @, r4 @
Clock.timerId = 1;
U' X' G7 ]- J! G3 c# c
Clock.tickPeriod = 5; //5us
4 A6 k7 Y7 {6 l9 V# ]1 @
arm端的watchdog程序和dsp端的计时器发生冲突了么?他们是共用了一个计时器么?这个cpu上一共几个定时器,怎么使用才能避免冲突呢?
' H8 J9 }( k0 u1 o4 {# G' n8 \ r
我将Clock.timerId 分别改成0 、2 、3,结果发现只有改成3的时候才可以,为什么呢?还有,我在使用Clock_create()的时候,我并没有
% ?" e) \" W( W6 H
指定使用哪个timer,难道是默认的使用Clock.timeId指定的timer吗?这样一来不就只能在DSP中使用同一个timer了?我要是想同时使用其他的timer该怎么办呢?
, N6 V9 f" C7 X
谢谢!
9 I5 \$ q+ i; U# N- J. R- S
4 Y0 l& e Q% P% \
/ n8 W; D7 Z* e8 y* L% {
3 M# O$ ~2 |! Q X+ ~% l4 {
! d' Q2 j0 {3 C; \* r* N9 o0 M
作者:
希望缄默
时间:
2016-8-29 17:16
CPU 支持四个
- O& q+ d: q" t9 |- n) X- \
ARM Linux
) u4 }& c U1 ^
定时器 0 为系统提供时间基准
! t( _9 a( P& P2 j% H* w N
定时器 1 看门狗定时器
0 I- \0 T$ A6 }$ k- U: G% {
DSP SYS/BIOS
& E3 _7 S: k3 q9 [
Clock.timerId 为系统提供时间基准
- {0 a5 o6 p" l; Y7 M& y
如果定时器 2 不能用可能是被占用了
1 t4 l9 p: n6 N) a6 ]* h- w
U0 g1 u4 P6 o1 E4 i- M+ ^
定时器都是 64位的 可以拆成两个 32位使用
欢迎光临 嵌入式开发者社区 (https://www.51ele.net/)
Powered by Discuz! X3.4