使用2812的CAP4捕获电网电压频率,经测试硬件过零点电路方波正常,T4作为CAP4时钟基准30ms周期,程序连续运行,能捕获到50Hz的周期值,在CAP4中断中把IO口电平翻转,将频率值输出,用示波器观察
问题:对于CAP4的中断标志位在中断中清零的位置却影响了捕获的周期,不论是设置上升沿捕获还是上升下降沿捕获,放在CAP4中断一进来就将CAP中断标志位清零,观察IO口输出频率,捕获出来的周期值都是40ms,频率25Hz
假设把CAP4在终端标志位放在中断结尾出清零,不论是设置上升沿捕获还是上升下降沿捕获,放在CAP4中断结尾处将CAP中断标志位清零,观察IO口输出频率,捕获出来的周期值都是20ms,频率50Hz
难道CAP4中断标志位的清零位置还会影响捕获值吗,请问这是什么原因? |