OpenEdv-开源电子网

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

怎么对定时器输出的PWM波计数啊?

[复制链接]

1

主题

9

帖子

0

精华

新手上路

积分
33
金钱
33
注册时间
2015-5-18
在线时间
0 小时
发表于 2015-5-18 16:38:57 | 显示全部楼层 |阅读模式
5金钱
我用的是F1ZET6 同时驱动3台步进电机变速运行,然后想对输出的PWM脉冲个数计数,但是不知道在哪边下手,求大神帮忙(毕业设计··急)

最佳答案

查看完整内容[请看2#楼]

可以用PWM中断计数,也可以用定时器级联,还可以用TIM1/TIM8的重复计数功能。
正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165540
金钱
165540
注册时间
2010-12-1
在线时间
2117 小时
发表于 2015-5-18 16:38:58 | 显示全部楼层
可以用PWM中断计数,也可以用定时器级联,还可以用TIM1/TIM8的重复计数功能。
我是开源电子网www.openedv.com站长,有关站务问题请与我联系。
正点原子STM32开发板购买店铺http://openedv.taobao.com
正点原子官方微信公众平台,点击这里关注“正点原子”
回复

使用道具 举报

1

主题

9

帖子

0

精华

新手上路

积分
33
金钱
33
注册时间
2015-5-18
在线时间
0 小时
 楼主| 发表于 2015-5-18 16:45:52 | 显示全部楼层
一个单片机驱动三台电机,会不会太占资源?
回复

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165540
金钱
165540
注册时间
2010-12-1
在线时间
2117 小时
发表于 2015-5-19 01:04:28 | 显示全部楼层
回复【2楼】非常工程师:
---------------------------------
不会,放心用。
我是开源电子网www.openedv.com站长,有关站务问题请与我联系。
正点原子STM32开发板购买店铺http://openedv.taobao.com
正点原子官方微信公众平台,点击这里关注“正点原子”
回复

使用道具 举报

1

主题

9

帖子

0

精华

新手上路

积分
33
金钱
33
注册时间
2015-5-18
在线时间
0 小时
 楼主| 发表于 2015-5-19 10:01:01 | 显示全部楼层
回复【4楼】正点原子:
---------------------------------
原子哥,我现在外部有64细分的 然后用的还是减速电机,定时器输出频率挺大的1.5KHz ,中断方式会不会太卡啊? 如果用高级定时器是不是只能驱动两台电机?
回复

使用道具 举报

1

主题

9

帖子

0

精华

新手上路

积分
33
金钱
33
注册时间
2015-5-18
在线时间
0 小时
 楼主| 发表于 2015-5-19 10:02:20 | 显示全部楼层
回复【4楼】正点原子:
---------------------------------
定时器级联就是  那个主从定时器方式吗?  我现在步进电机分别用的是定时器 2,3,4。然后用定时器6定时50ms 再改变上面三个定时器计数初值,  但是通用定时器里边计数在什么地方加啊?昨天纠结了半天没找到
回复

使用道具 举报

1

主题

9

帖子

0

精华

新手上路

积分
33
金钱
33
注册时间
2015-5-18
在线时间
0 小时
 楼主| 发表于 2015-5-19 11:16:03 | 显示全部楼层
回复【4楼】正点原子:
---------------------------------
原子哥,我还想问您一个东西,就是我用 TIM2_PWM_Init(u16 arr,u16 psc),我再在这个函数底下加TIM2_IRQHandler(void),这个中断是不会触发的吗?
回复

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165540
金钱
165540
注册时间
2010-12-1
在线时间
2117 小时
发表于 2015-5-19 23:34:15 | 显示全部楼层
回复【7楼】非常工程师:
---------------------------------
看你自己的配置
我是开源电子网www.openedv.com站长,有关站务问题请与我联系。
正点原子STM32开发板购买店铺http://openedv.taobao.com
正点原子官方微信公众平台,点击这里关注“正点原子”
回复

使用道具 举报

1

主题

9

帖子

0

精华

新手上路

积分
33
金钱
33
注册时间
2015-5-18
在线时间
0 小时
 楼主| 发表于 2015-5-21 19:47:22 | 显示全部楼层
回复【8楼】正点原子:
---------------------------------原子哥,还想请教您下。我用定时器中断对PWM脉冲数计数,但是得到的值和实际电机转的圈数相差很大时什么原因啊?
回复

使用道具 举报

1

主题

9

帖子

0

精华

新手上路

积分
33
金钱
33
注册时间
2015-5-18
在线时间
0 小时
 楼主| 发表于 2015-5-21 19:49:33 | 显示全部楼层
void TIM2_PWM_Init(u16 arr,u16 psc)
{  
GPIO_InitTypeDef GPIO_InitStructure;
TIM_TimeBaseInitTypeDef  TIM_TimeBaseStructure;
TIM_OCInitTypeDef  TIM_OCInitStructure;

RCC_APB1PeriphClockCmd(RCC_APB1Periph_TIM2, ENABLE);
  RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOA  | RCC_APB2Periph_AFIO, ENABLE); 
GPIO_PinRemapConfig( GPIO_PartialRemap2_TIM2 , ENABLE);     
 
   GPIO_InitStructure.GPIO_Pin = GPIO_Pin_1; 
GPIO_InitStructure.GPIO_Mode = GPIO_Mode_AF_PP; 
GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;
GPIO_Init(GPIOA, &GPIO_InitStructure);//??????GPIO
 
TIM_TimeBaseStructure.TIM_Period = arr; 
TIM_TimeBaseStructure.TIM_Prescaler =psc; 
TIM_TimeBaseStructure.TIM_ClockDivision = 0; 
TIM_TimeBaseStructure.TIM_CounterMode = TIM_CounterMode_Up; 
TIM_TimeBaseInit(TIM2, &TIM_TimeBaseStructure); 

TIM_OCInitStructure.TIM_OCMode = TIM_OCMode_PWM2; 
  TIM_OCInitStructure.TIM_OutputState = TIM_OutputState_Enable; 
TIM_OCInitStructure.TIM_OCPolarity = TIM_OCPolarity_High; 
TIM_OC2Init(TIM2, &TIM_OCInitStructure);  

TIM_OC2PreloadConfig(TIM2, TIM_OCPreload_Enable); 
        TIM_ITConfig(TIM2,TIM_IT_Update,ENABLE ); 
TIM_Cmd(TIM2, ENABLE); 
TIM_SetCompare2(TIM2,arr/2);
}

void TIM2_IRQHandler(void)   
{      
    if (TIM_GetITStatus(TIM2, TIM_IT_Update) != RESET) 
{
TIM_ClearITPendingBit(TIM2, TIM_IT_Update  );  
                countpwm[0]++;
       }
}
回复

使用道具 举报

1

主题

9

帖子

0

精华

新手上路

积分
33
金钱
33
注册时间
2015-5-18
在线时间
0 小时
 楼主| 发表于 2015-5-21 19:51:17 | 显示全部楼层
回复【9楼】非常工程师:
---------------------------------
就是上面那个countpwm[0],得到的值和实际电机转的圈数相差很大,纠结两天了。我是把值显示在屏幕上的
回复

使用道具 举报

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

本版积分规则



关闭

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

正点原子公众号

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

GMT+8, 2025-6-22 05:08

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

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