file:///C:UsersThinkpadAppDataRoamingTencentUsers1048921094TIMWinTempRichOleP~G6R9ZR]OSC4@_4NAB77JU.pngTIM2_IRQHandler 是 TIM2 的中断服务函数,该函数用到了两个全局变量,用于辅助实现高电平捕获。其中 TIM2CH1_CAPTURE_STA,是用来记录捕获状态,该变量类似我们在 usart.c
里面自行定义的 USART_RX_STA 寄存器(其实就是个变量,只是我们把它当成一个寄存器那样
来使用)。
是否我可以理解为我可以自己设定,比如0-4是溢出次数,然后5-6是捕获高电平 7是捕获完成
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
第二个else if 如果还没有出现上升沿,
第三个else if 如果出现了一次下降沿,还没有出现上升沿
所以执行过程是,第一次扫描到上升沿,进入第二个else if,设置下降沿检测,sta标记获得一次上升沿
然后扫描到下降沿,进入第一个if,读取数据(高电平时间),设置上升沿检测,sta标记获得一次下降沿
然后扫描到上升沿,进入第三个else if,读取数据(低电平时间),sta标记捕获完成
从c语言的角度看了一下,感觉可行
一周热门 更多>