OpenEdv-开源电子网

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

Tim3测输入频率,CH1、CH2不能同时使用问题

[复制链接]

11

主题

33

帖子

0

精华

初级会员

Rank: 2

积分
102
金钱
102
注册时间
2013-1-17
在线时间
1 小时
发表于 2013-3-22 14:37:25 | 显示全部楼层 |阅读模式

我用Tim3的CH1、CH2同时测量速度传感器的输入频率,结果发现两个通道不能同时使用,烦劳原子哥帮我看看,Tim3配置代码如下:
void TIM3_Config(void)
{
    TIM_ICInitTypeDef  TIM_ICInitStructure;
    TIM_TimeBaseInitTypeDef  TIM_TimeBaseStructure;

    //TIM3 Periph clocks enable
    //RCC_APB2PeriphClockCmd(FREQIN_RCC_APB2, ENABLE);
    RCC_APB1PeriphClockCmd(RCC_APB1Periph_TIM3, ENABLE);

    GPIO_PinRemapConfig(GPIO_FullRemap_TIM3, ENABLE);    
 
    TIM_TimeBaseStructure.TIM_Period = 0xffff;                       
    TIM_TimeBaseStructure.TIM_Prescaler = 719;                        
    TIM_TimeBaseStructure.TIM_CounterMode = TIM_CounterMode_Down; 

    TIM_TimeBaseInit(TIM3, &TIM_TimeBaseStructure);
 

    TIM_ICInitStructure.TIM_Channel = TIM_Channel_1;     
    TIM_ICInitStructure.TIM_ICPolarity = TIM_ICPolarity_Rising;  
    TIM_ICInitStructure.TIM_ICSelection = TIM_ICSelection_DirectTI; 
    TIM_ICInitStructure.TIM_ICPrescaler = TIM_ICPSC_DIV1;     
    TIM_ICInitStructure.TIM_ICFilter = 0x0;      

    //TIM_ICInit(TIM3, &TIM_ICInitStructure);       
    TIM_PWMIConfig(TIM3, &TIM_ICInitStructure);  
    TIM_SelectInputTrigger(TIM3, TIM_TS_TI1FP1);      
    TIM_SelectSlaveMode(TIM3, TIM_SlaveMode_Reset);      
    TIM_SelectMasterSlaveMode(TIM3, TIM_MasterSlaveMode_Enable);  

    TIM_Cmd(TIM3, ENABLE);               
    TIM_ITConfig(TIM3, TIM_IT_CC1, ENABLE);         

    TIM_ICInitStructure.TIM_Channel = TIM_Channel_2;     
    TIM_ICInitStructure.TIM_ICPolarity = TIM_ICPolarity_Rising;  
    TIM_ICInitStructure.TIM_ICSelection = TIM_ICSelection_DirectTI; 
    TIM_ICInitStructure.TIM_ICPrescaler = TIM_ICPSC_DIV1;     
    TIM_ICInitStructure.TIM_ICFilter = 0x0;       

    TIM_PWMIConfig(TIM3, &TIM_ICInitStructure);     
    TIM_SelectInputTrigger(TIM3, TIM_TS_TI2FP2);      
    TIM_SelectSlaveMode(TIM3, TIM_SlaveMode_Reset);      
    TIM_SelectMasterSlaveMode(TIM3, TIM_MasterSlaveMode_Enable);  

    TIM_ITConfig(TIM3, TIM_IT_CC2, ENABLE);         
    TIM_Cmd(TIM3, ENABLE);             
}
红色和蓝色部分代码,哪个写在下面哪个通道好使,我不明白问题出在哪里,烦劳指点下。

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

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165540
金钱
165540
注册时间
2010-12-1
在线时间
2117 小时
发表于 2013-3-22 15:40:18 | 显示全部楼层
是你中断处理函数里面没做好吧!
我是开源电子网www.openedv.com站长,有关站务问题请与我联系。
正点原子STM32开发板购买店铺http://openedv.taobao.com
正点原子官方微信公众平台,点击这里关注“正点原子”
回复 支持 反对

使用道具 举报

0

主题

1

帖子

0

精华

新手入门

积分
21
金钱
21
注册时间
2013-11-20
在线时间
0 小时
发表于 2013-11-20 20:09:27 | 显示全部楼层
楼主的问题解决了吗?我碰到了一样的问题,特来请教!
回复 支持 反对

使用道具 举报

11

主题

33

帖子

0

精华

初级会员

Rank: 2

积分
102
金钱
102
注册时间
2013-1-17
在线时间
1 小时
 楼主| 发表于 2013-12-15 10:51:56 | 显示全部楼层
回复【3楼】iwillhu:
---------------------------------
没有解决,因为第二个通道是备用通道,所以也就没再深究。你要是解决了告诉我一下,我QQ376609451。
回复 支持 反对

使用道具 举报

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

本版积分规则



关闭

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

正点原子公众号

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

GMT+8, 2025-6-16 00:38

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

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