|
我用STM32F1xxx来同时对TIMR4的两个输入脉冲进行脉宽测量,我的脉宽测量思路为两次上升沿的捕捉值相减,但现如下问题不解,假如前一个上升沿脉冲时CNT内的值为0xFFFC,那么下一个上升沿时CNT的值发生了溢出又从0开始了,比如第二次捕捉到的CNT中的值为0x0A,那请问这个问题要怎么解决咧,不可能用第二次的值去减第一次捕捉到的值,那这个脉冲要如何计算咧???请各位用过的指教? |
微信公众号
手机版
Data =T1New.long_bank -T1Old.long_bank;
else
Data =0xffffffff -T1Old.long_bank +T1New.long_bank;
对两个通道的值进行比较。 然后根据大小计算 如上
void IntT1Pro()
{
TMR1IF =0;
ThreeBuf ++;
}
在此过程中,计算中断来的次数。
其他的自己思考吧。 大神总是喜欢说半截话 余下的给你思考。