Other Parts Discussed in Thread: AM3359
您好!
AM3359芯片上的 timer3存在间歇性问题。 我们将 timer3设置为每2.08us 中断一次、它似乎在许多小时内正常工作、直到中断停止几分钟、然后恢复正常。 根据我们的测试结果、并非所有 PCB 都有问题。 此问题只能在少数 PCB 上重现。
经调查、我们使用 EtherCAT 数据捕获到、定时器寄存器(TCRR)超出了我们应用的范围。 它应该在0xFFF_FFCD 至0xFFF_FFFF 之间进行范围退回、但我们在 TCRR 寄存器中捕获的值远超此范围。 我们还使用调试器来监视对 TCLR、TCRR、TLDR 和 TTGR 寄存器的任何写入、并且没有命中。 我们查看了勘误表、但未找到任何内容。
这就是我们设置 timer3的方式
Timer_Params timerParams;
Timer_Params_init (&timerParams);
timerParams.extFreq.lo = 24000000;
timerParams.extFreq.hi = 0;
timerParams.period = nxt_clk_reference_counts; //标称值为50
timerParams.periodType = Timer_PeriodType_Counts;//Timer_PeriodType_micros
timerParams.startMode = Timer_StartMode_user;
nxtClkTimer = Timer_create (1、StepIO_Hwisr、&timerParams、NULL);//运行时的 TimerID1 => HWTIMER3
我们还切换到使用 timer4、发现问题仍然存在、但频率更低。
您是否知道 timer3有任何间歇性问题?
我们的系统以550MHz 的频率运行。
timer3的时钟频率为24MHz
我们使用的是 CCS6.0.1.00040
SYS/BIOS 6.35.5.54和 XDCtools 3.24.7.73
谢谢
Robbie