OpenEdv-开源电子网

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

关于使用定时器测量外部脉冲计数的问题

[复制链接]

5

主题

43

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
202
金钱
202
注册时间
2016-1-23
在线时间
31 小时
发表于 2016-5-2 18:22:29 | 显示全部楼层 |阅读模式
10金钱
使用TIM8_ETR对外部脉冲进行计数,  但是发现当计数溢出时,无法进入中断,
搜了下论坛和度娘 大概说当计数器工作在从模式下时无法进入中断,是不是这样? 有什么解决办法么?
另外请教TIM_ETRClockMode1Config和TIM_ETRClockMode2Config两个模式的区别

谢谢!

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

使用道具 举报

5

主题

43

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
202
金钱
202
注册时间
2016-1-23
在线时间
31 小时
 楼主| 发表于 2016-5-2 18:23:13 | 显示全部楼层
本帖最后由 nngogogo 于 2016-5-2 18:25 编辑

代码是从TIM1_ETR改过来的  可能注释有些还是TIM1 望周知 谢谢

[mw_shl_code=c,true]//使用TIM8 ETR作为外部模式二输入
//使用GPIOA.0口
//
void TIM8_ETR_Init()
{
GPIO_InitTypeDef GPIO_InitStructure;
TIM_TimeBaseInitTypeDef TIM_TimeBaseStructure;
NVIC_InitTypeDef NVIC_InitStructure;

RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOA|RCC_APB2Periph_AFIO|
                                                 RCC_APB2Periph_TIM8, ENABLE);        //使能GPIOA时钟        TIM1时钟

GPIO_InitStructure.GPIO_Pin = GPIO_Pin_0;
GPIO_InitStructure.GPIO_Mode = GPIO_Mode_IPU;                 //输入模式
GPIO_Init(GPIOA,&GPIO_InitStructure);
//配置定时器1 TIM1
TIM_TimeBaseStructure.TIM_Prescaler = 0;
TIM_TimeBaseStructure.TIM_Period =0XFFFF;
TIM_TimeBaseStructure.TIM_ClockDivision = 0;
TIM_TimeBaseStructure.TIM_CounterMode = TIM_CounterMode_Up;
TIM_TimeBaseInit(TIM8,&TIM_TimeBaseStructure);

NVIC_InitStructure.NVIC_IRQChannel = TIM8_UP_IRQn;
NVIC_InitStructure.NVIC_IRQChannelPreemptionPriority = 0x00;
NVIC_InitStructure.NVIC_IRQChannelSubPriority = 0x02;
NVIC_InitStructure.NVIC_IRQChannelCmd = ENABLE;
NVIC_Init(&NVIC_InitStructure);

TIM_ITConfig(TIM8, TIM_IT_Update, ENABLE);

TIM_ETRClockMode2Config(TIM8, TIM_ExtTRGPSC_OFF, TIM_ExtTRGPolarity_NonInverted,0);
TIM_SetCounter(TIM8,0);

TIM_Cmd(TIM8,ENABLE);
}
//定时器1 TIM1中断
void TIM8_UP_IRQHandler()
{
if(TIM_GetITStatus(TIM8, TIM_IT_Update) != RESET) //检查TIM1是否发生了更新中断
{
  TIM_ClearITPendingBit(TIM8, TIM_IT_Update);           //清除TIM1更新中断位
  TIM_SetCounter(TIM8,0);
  Total_CNT += 0XFFFF;
}
}[/mw_shl_code]
回复

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165540
金钱
165540
注册时间
2010-12-1
在线时间
2117 小时
发表于 2016-5-4 22:29:24 | 显示全部楼层
不应该吧,不过我没有测试过
回复

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165540
金钱
165540
注册时间
2010-12-1
在线时间
2117 小时
发表于 2016-5-4 22:36:33 | 显示全部楼层
回复

使用道具 举报

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

本版积分规则



关闭

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

正点原子公众号

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

GMT+8, 2025-7-9 15:12

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

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