工具与软件:
您好、TI 工程师:
有没有关于 am62x 的 pruss-iep0计时器的示例?
只需不断检查 IEP0/计时器超时状态标志。
谢谢!
James
PS、 在 AM335x 中、计时器运行良好、我想将其移植到 am62xx、
这里是代码段、
void timer_init()
{
/*将默认 inc 设置为1、将补偿 inc 设置为1 (尽管从未使用)*/
GLOBAL_CFG = GLOBAL_CFG_DEFAULT_INC (1)| GLOBAL_CFG_CMP_INC (1);
/*启用来自 CMP1的中断*/
PIEP_CMP_CFG = CMP_CFG_CMP_EN (0)|1;//"|1"清除 counter0自动、但测试不起作用
/*设置 CMP1的值=(以 us 为单位的 TIME_UNIT)*(1us 的 clk 周期数)*/
PIEP_COUNT = 0;//写入清除计数器
PIEP_CMP_CMP0 =超时;
/*如果错误地设置了中断、请清除 CMP1的中断*/
PIEP_CMP_STATUS = CMD_STATUS_CMP_HIT (0);
/*启动计时器*/
GLOBAL_cfg |= GLOBAL_CFG_CNT_ENABLE;
PIEP_GLOBAL_CFG = GLOBAL_cfg;
}
void timer_loop_checking()
{ while (!( PIEP_CMP_STATUS & 1 ));
PIEP_CMP_STATUS = CMD_STATUS_CMP_HIT (0);
}