OpenEdv-开源电子网

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

PWM的问题,电机驱动。

[复制链接]

6

主题

12

帖子

0

精华

初级会员

Rank: 2

积分
56
金钱
56
注册时间
2015-12-8
在线时间
0 小时
发表于 2015-12-21 11:55:28 | 显示全部楼层 |阅读模式
5金钱
//TIM5 PWM??·??????? 
//PWM??????????
//arr??×?????×°??
//psc???±???¤·?????
void TIM5_PWM_Init(u32 arr,u32 psc)
{  
//????·??è????????IO???è??

GPIO_InitTypeDef GPIO_InitStructure;
TIM_TimeBaseInitTypeDef  TIM_TimeBaseStructure;
TIM_OCInitTypeDef  TIM_OCInitStructure;

RCC_APB1PeriphClockCmd(RCC_APB1Periph_TIM5,ENABLE);   //TIM5?±??????    
RCC_AHB1PeriphClockCmd(RCC_AHB1Periph_GPIOA, ENABLE); //????PORTF?±??

GPIO_PinAFConfig(GPIOA,GPIO_PinSource0,GPIO_AF_TIM5); //GPIOA0???????¨?±?÷5

GPIO_InitStructure.GPIO_Pin = GPIO_Pin_0;           //GPIOA0
GPIO_InitStructure.GPIO_Mode = GPIO_Mode_AF;        //????????
GPIO_InitStructure.GPIO_Speed = GPIO_Speed_100MHz; //????100MHz
GPIO_InitStructure.GPIO_OType = GPIO_OType_PP;      //???ì????????
GPIO_InitStructure.GPIO_PuPd = GPIO_PuPd_UP;        //????
GPIO_Init(GPIOA,&GPIO_InitStructure);              //??????PA0
 
TIM_TimeBaseStructure.TIM_Prescaler=psc;  //?¨?±?÷·???
TIM_TimeBaseStructure.TIM_CounterMode=TIM_CounterMode_Up; //?ò??????????
TIM_TimeBaseStructure.TIM_Period=arr;   //×?????×°????
TIM_TimeBaseStructure.TIM_ClockDivision=TIM_CKD_DIV1; 

TIM_TimeBaseInit(TIM5,&TIM_TimeBaseStructure);//???????¨?±?÷5

//??????TIM14 Channel1 PWM????  
TIM_OCInitStructure.TIM_OCMode = TIM_OCMode_PWM1; //?????¨?±?÷????:TIM?????í???÷??????1
  TIM_OCInitStructure.TIM_OutputState = TIM_OutputState_Enable; //±???????????
TIM_OCInitStructure.TIM_OCPolarity = TIM_OCPolarity_Low; //????????:TIM????±?????????
TIM_OC1Init(TIM5, &TIM_OCInitStructure);  //?ù??T???¨???????????????èTIM1 4OC1

TIM_OCInitStructure.TIM_Pulse = 0x00;
TIM_OC1PreloadConfig(TIM5, TIM_OCPreload_Enable);  //????TIM5??CCR1?????¤×°???????÷
 
  TIM_ARRPreloadConfig(TIM5,ENABLE);//ARPE???? 

TIM_Cmd(TIM5, ENABLE);  //????TIM5
 
 
}  



PWM初始化之后电机一直转,我明明初始化的是0,电机停不下来。哪错了吗

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

使用道具 举报

9

主题

61

帖子

0

精华

初级会员

Rank: 2

积分
194
金钱
194
注册时间
2015-12-3
在线时间
29 小时
发表于 2015-12-21 17:04:52 | 显示全部楼层
TIM_OCInitStructure.TIM_Pulse = 0x00;之后应该加TIM_OC1Init(TIM5, &TIM_OCInitStructure); 的吧?
走不一样的路,让别人看吧
回复

使用道具 举报

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

本版积分规则



关闭

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

正点原子公众号

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

GMT+8, 2025-6-21 13:43

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

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