zcllom 发表于 2023-3-23 10:54:20

捕获和外部中断的机制是一样的吗?触发的速度是一样的吗

捕获和外部中断的机制是一样的吗?触发的速度是一样的吗?现在需要侦测交流电过零点,通过光耦触发,硬件上需要响应的越快越好

8051启蒙者 发表于 2023-3-23 11:10:16

已转技术,待回复

乘风飞扬 发表于 2023-3-23 11:34:42

使用PCA捕获的话和外部中断完全一样;高级PWM输入捕获有硬件去抖动,默认加一个时钟的防抖:


梁工 发表于 2023-3-23 11:42:36

捕获和外部中断的机制类似的,触发的速度是一样的,都是一个时钟采样到边沿就触发了。

对于50或60Hz交流电的过0检测,外中断或捕获的速度比过0检测的要求高了至少3个数量级(1000倍以上),所以根本无需考虑速度问题。
220V的峰值为311V,在10V之内检测到过0已经是非常好的了,好多检测电路的误差已经远远高于这个误差,而10V之内对应过0点的时间是10*V us,V是过0检测点的电压,10V就是100us,5V就是50us,而MCU跑24MHz时,一个时钟为41.67ns。10V幅度对应的有效值只有0.7V。

综上所述,MCU外中断或捕获是几十ns级别,而过0检测是几十us级别的 ,不用考虑速度的问题。

这已经是简洁的分析了,楼主是否看得明白?

zcllom 发表于 2023-3-23 18:59:39

乘风飞扬 发表于 2023-3-23 11:34
使用PCA捕获的话和外部中断完全一样;高级PWM输入捕获有硬件去抖动,默认加一个时钟的防抖:




那感觉还是高级PWM输入捕获好一些,毕竟还是要考虑可能存在的干扰导致误触发
页: [1]
查看完整版本: 捕获和外部中断的机制是一样的吗?触发的速度是一样的吗