u8 TIM5CH1_CAPTURE_STA=0; //输入捕获状态
u16 TIM5CH1_CAPTURE_VAL; //输出捕获状态
//定时器5中断服务程序
void TIM5_IRQHandler(void)
{
if((TIM5CH1_CAPTURE_STA&0X80)==0)//还未成功捕获
{
if (TIM_GetITStatus(TIM5, TIM_IT_Update) != RESET)
......
.....
.....
.....
TIM5CH1_CAPTURE_STA和TIM5CH1_CAPTURE_VAL这两个是我们自己定义的变量,怎么就能直接记录高低电平??好像也没和寄存器关联。
我感觉应该读取WK_UP输入电平 ->> 然后用WK_UP的值 &(与上) TIM5CH1_CAPTURE_STA这个变量再去判断。但是程序好像没有这句类似的。
不然怎么在中断怎么能直接判断 最高位的值是0或1? 是否与成功捕获?
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
一周热门 更多>