HC32L196 捕捉问题
PA08设置为TIM3_CH0A, 设置上升沿和下降沿捕捉中断,但是中断后没有相关上升沿和下降沿的中断标志,应该怎么判断?代码如下:void Tim3_IRQHandler(void)
{
static uint8_t i;
//Timer3 捕获中断A
if(TRUE == Tim3_GetIntFlag(Tim3CA0Irq))
{
if(0 == i)
{
Tim3_Capture_Value1 = M0P_TIM3_MODE23->CCR0A_f.CCR0A; //第一次读取捕获值
Tim3_Uev_Cnt = 0;
i++;
}
else
{
Tim3_Capure_Value2 = M0P_TIM3_MODE23->CCR0A_f.CCR0A;//第二次读取捕获值
Tim3_Capture_Value = Tim3_Uev_Cnt * 0xFFFF + Tim3_Capure_Value2 - Tim3_Capture_Value1;//两次捕获之间的差值
Tim3_Uev_Cnt = 0;
i = 0;
}
Tim3_ClearIntFlag(Tim3CA0Irq);//清中断标志
}
//timer3计数溢出中断
if(TRUE == Tim3_GetIntFlag(Tim3UevIrq))
{
Tim3_Uev_Cnt++;
Tim3_ClearIntFlag(Tim3UevIrq);
}
}
没遇到过 不会啊,都进入中断了? 没有对应的上升沿或者下降沿标志,其它家也没有的,需要自己做逻辑运算,参考 st 的 ir接收处理。 中断里面读取CH0A电平吧,判断当前是高电平还是低电平 楼主的意思是能进入中断 但是不知道是什么原因产生的中断? 上升沿和下降沿的中断标志是能区分开的吗 楼主这个用的也不是中断模式啊这不是轮询吗 这种方式非常容易导致一些信号没有捕捉到 在寄存器里边有上升沿和下降沿的区别吗 进入中断后直接读一下中断标志位就知道了呀
在中断函数中是否可以设置进入中断的门槛啊
页:
[1]