OpenEdv-开源电子网

 找回密码
 立即注册
正点原子全套STM32/Linux/FPGA开发资料,上千讲STM32视频教程免费下载...
查看: 2751|回复: 1

关于输入捕获的问题

[复制链接]

2

主题

6

帖子

0

精华

初级会员

Rank: 2

积分
157
金钱
157
注册时间
2015-11-30
在线时间
32 小时
发表于 2016-1-22 17:41:56 | 显示全部楼层 |阅读模式
我想用stm32的输入捕获来检测输入脉冲的频率,有师兄以前写的代码,其实是和网上类似的。可是我就不太明白他到底是什么意思void TIM3_IRQHandler(){
           if(TIM_GetITStatus(TIM3, TIM_IT_CC2) == SET)
   {
        //         LCD_DisplayStringLine(Line9,"GPIOA2 TIM2_CH3 50%");        //
     // Clear TIM3 Capture compare interrupt pending bit
     TIM_ClearITPendingBit(TIM3, TIM_IT_CC2);
     if(CaptureNumber == 0)
     {
       // Get the Input Capture value
       IC3ReadValue1 = TIM_GetCapture2(TIM3);
       CaptureNumber = 1;
     }
     else if(CaptureNumber == 1)
     {
       // Get the Input Capture value
       IC3ReadValue2 = TIM_GetCapture2(TIM3);

       // Capture computation
       if (IC3ReadValue2 > IC3ReadValue1)  //
       {
         Capture = (IC3ReadValue2 - IC3ReadValue1);
       }
       else
       {
         Capture = ((60000 - IC3ReadValue1) + IC3ReadValue2);  //这个又是为什么要60000来减
       }
       // Frequency computation
       TIM3Freq = 36000000/ Capture;
       CaptureNumber = 0;
                         counn++;
                        if(counn==1000) //为什么要加到1000才进行计算
                        {
                               
                                counn=0;
                                sprintf(string,"Frequnecy:%dHz     ",TIM3Freq);
                                LCD_DisplayStringLine(Line9,string);
                        }
     }
   }
}
发一个中断服务函数看下,预分频是1,自动重装载值为60000。谁能告诉我这是怎么计算的吗?原子计算代码捕获的使用的是寄存器,表示不能理解。小弟刚刚学习STM32还是有很多不懂的。希望大神不啬赐教!!!谢谢!!!

正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

354

主题

1475

帖子

12

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
8097
金钱
8097
注册时间
2015-10-15
在线时间
2919 小时
发表于 2016-1-22 21:24:59 | 显示全部楼层
楼主看看我们输入捕获的视频,把输入捕获原理了解一下,才能看懂代码,看懂运行过程
我是开源电子网www.openedv.com站长,有关站务问题请与我联系。
正点原子STM32开发板购买店铺http://openedv.taobao.com
正点原子官方微信公众平台,点击这里关注“正点原子”
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则



关闭

原子哥极力推荐上一条 /2 下一条

正点原子公众号

QQ|手机版|OpenEdv-开源电子网 ( 粤ICP备12000418号-1 )

GMT+8, 2025-6-21 11:01

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

快速回复 返回顶部 返回列表