在编码器模式下,TIM3的中断是由TIM2的计数器值的变化触发的。当你在TIM3中断内访问TIM2的CNT值时,实际上就是在中断内读取TIM2的计数器值。如果在读取CNT值的过程中发生了TIM2的更新,那么这个更新可能会导致TIM3的中断被触发,但是由于你的中断正在被执行,所以这次中断的触发被忽略了。
另外,你在中断内修改了TIM2的CNT值,这可能会导致编码器的计数值发生错误。因为编码器模式下,TIM2的计数器值通过编码器的输入信号来自增或自减,如果在中断内修改了CNT值,那么编码器的计数值可能会被错误地增加或减少。
因此,访问和修改TIM2的CNT值是有风险的,可能会导致中断的触发失效和编码器计数值的错误。建议在中断内避免访问和修改TIM2的CNT值,可以在中断内保存计数器的值,稍后在主程序中读取和处理这个值。同时,确保编码器的输入信号不会在访问和修改CNT值期间发生变化,以避免计数值错误。
在编码器模式下,TIM3的中断是由TIM2的计数器值的变化触发的。当你在TIM3中断内访问TIM2的CNT值时,实际上就是在中断内读取TIM2的计数器值。如果在读取CNT值的过程中发生了TIM2的更新,那么这个更新可能会导致TIM3的中断被触发,但是由于你的中断正在被执行,所以这次中断的触发被忽略了。
另外,你在中断内修改了TIM2的CNT值,这可能会导致编码器的计数值发生错误。因为编码器模式下,TIM2的计数器值通过编码器的输入信号来自增或自减,如果在中断内修改了CNT值,那么编码器的计数值可能会被错误地增加或减少。
因此,访问和修改TIM2的CNT值是有风险的,可能会导致中断的触发失效和编码器计数值的错误。建议在中断内避免访问和修改TIM2的CNT值,可以在中断内保存计数器的值,稍后在主程序中读取和处理这个值。同时,确保编码器的输入信号不会在访问和修改CNT值期间发生变化,以避免计数值错误。
举报