关于ccs中的delayus这个延时函数是否准确?
各位大侠:请问一下这个delayus这个函数延时准确吗?我用这个函数在我的pwm中断中延时,如下,我用的updowm模式的pwm,希望通过延时来降低pwm的频率,我现在的...
各位大侠: 请问一下这个delayus这个函数延时准确吗?我用这个函数在我的pwm中断中延时,如下,我用的updowm模式的pwm,希望通过延时来降低pwm的频率,我现在的pwm频率是1。1445khz,周期为0。873ms,这个频率对于步进电机来说很高,所以我想通过这种方法把它降下来,进入中断后把电平拉低,延时0.873ms,再输出高电平interrupt void EPWM1_INT(void){ EPwm1TimerIntCount++; // Clear INT flag for this timer EPwm1Regs.ETCLR.bit.INT = 1; EPwm1Regs.AQCTLA.bit.CAD = AQ_CLEAR; // PWM toggle low/high EPwm1Regs.AQCTLA.bit.CAU = AQ_CLEAR; DELAY_US(873); EPwm1Regs.AQCTLA.bit.CAU = AQ_SET; // PWM toggle low/high EPwm1Regs.AQCTLA.bit.CAD= AQ_CLEAR; PieCtrlRegs.PIEACK.all = PIEACK_GROUP3;}/**/可是这样的结果输出的脉冲一段时间有,一段时间没有,很不稳定,是因为delayus不准吗?
展开
2013-10-27
展开全部
回复 5# 我用的定时器的中断延时,就没有问题,
2013-10-27
展开全部
想要精确制导延迟的时间,既然不能用delay可否用NOP指令实现呢
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
2013-10-27
展开全部
回复 charrijon 的帖子他这个就是在中断中使用的延时啊,怎么会被中断打断呢?麻烦解释一下吧 .
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
2013-10-27
展开全部
回复 3# 有道理啊,呵呵,我说怎么老是有问题,却找不到原因
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
2013-10-27
展开全部
这种延时会被中断打断的,你应该用另一种方法。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询