打印
[KungFu8位 MCU]

KF8A100FNG的中断响应时间问题

[复制链接]
1722|2
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
我正在用KF8A100FNG进行开发,其中使用P0.4的CPP3捕捉输入信号功能对PWM输入进行采样。当输入PWM Freq=200Hz,dutycycle=99.9%时,获得的duty cycle及period计数如下图所示:
               
可以看出第一个上升沿没有响应到,而是到下一个上升沿才响应,这样得到的DC=50%,使得电机工作。
如果可以正确响应,得到0%的DC,电机是不应该工作的。
从debug的结果看,是不是因为时间过短(5us),没有及时响应到边沿导致?
中断响应时间有具体限值吗?我在Datasheet里没有找到相关参数。
CCP3的捕捉中断函数我是按照Chipon的Demo程序写的,我贴在下面了。
void Capture_Isr(void)
{
        CCP3IF =0;
        if(P04)//刚捕捉到的是上升沿
        {
                TPeriod_cnt =CCP3H<<8;
                TPeriod_cnt +=CCP3L; //得到周期
                //T3清零
                T3ON =0;
                T3H =0;
                T3L =0;
                T3ON =1;
                //更新配置,开始捕捉下降沿
                CCP3IE=0;
                CCP3CTL =0x04;//捕捉下降沿
                CCP3IF =0;
                CCP3IE =1;
                Flag =1;
        }
        else//刚捕捉到的是下降沿
        {
                TDuty_cnt =CCP3H<<8;
                TDuty_cnt +=CCP3L; //得到占空比
                CCP3IE=0;
                CCP3CTL =0x05;//捕捉上升沿
                CCP3IF =0;
                CCP3IE =1;
        }
        T3OverflowTime = 0;
}



使用特权

评论回复
沙发
caigang13| | 2022-8-2 20:05 | 只看该作者
学习了,谢谢楼主分享经验。

使用特权

评论回复
板凳
onlycook| | 2022-8-9 15:31 | 只看该作者
学习了,感谢楼主分享经验

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

12

主题

29

帖子

1

粉丝