你的浏览器版本过低,可能导致网站不能正常访问!
为了你能正常使用网站功能,请使用这些浏览器。

TIM5-CH4;TIM8-CH3N两个通道产生PWM波的实验

[复制链接]
dengyijun103 提问时间:2017-11-23 10:32 /
大家好!本人在调试TIM5-CH4;TIM8-CH2N两个通道产生PWM波的实验。但是TIM5-CH4可以输出正常,TIM3-CH3N的不行。下面是代码,希望大家看看,路过帮顶。是什么问题导致的呢?
KEIL5.14       stm32F205标准库开发  64引脚
void Time3_Time5_Configuration(void) //TIM3,TIM5ûÓÐÓõ½ÖжÏ
{
uint16_t PrescalerValue = 0;

GPIO_InitTypeDef    GPIO_InitStructure;
TIM_TimeBaseInitTypeDef  TIM_TimeBaseStructure;
TIM_OCInitTypeDef     TIM_OCInitStructure;
  
// TIM_BDTRInitTypeDef TIM_BDTRInitStructure;
RCC_APB2PeriphClockCmd(RCC_APB2Periph_TIM8, ENABLE); //TIM8 CH3N  
RCC_AHB1PeriphClockCmd(RCC_AHB1Periph_GPIOB, ENABLE);

RCC_APB1PeriphClockCmd(RCC_APB1Periph_TIM5,ENABLE);     
RCC_AHB1PeriphClockCmd(RCC_AHB1Periph_GPIOA, ENABLE);


//TIM_InternalClockConfig(TIM5);
/* TIM8 CH2N */
GPIO_InitStructure.GPIO_Pin = GPIO_Pin_14 ;  //motor2-EN  PB14
GPIO_InitStructure.GPIO_Speed=GPIO_Speed_50MHz;
GPIO_InitStructure.GPIO_Mode=GPIO_Mode_AF;
GPIO_InitStructure.GPIO_OType = GPIO_OType_PP;
GPIO_InitStructure.GPIO_PuPd = GPIO_PuPd_UP;   
GPIO_Init(GPIOB, &GPIO_InitStructure);

GPIO_PinAFConfig(GPIOB, GPIO_PinSource14, GPIO_AF_TIM8);
/* TIM5 CH3 */   
  GPIO_InitStructure.GPIO_Pin = GPIO_Pin_2;     //motor1-en  PA2
GPIO_InitStructure.GPIO_Speed=GPIO_Speed_50MHz;
GPIO_InitStructure.GPIO_Mode=GPIO_Mode_AF;
GPIO_InitStructure.GPIO_OType = GPIO_OType_PP;
GPIO_InitStructure.GPIO_PuPd = GPIO_PuPd_UP;  
  GPIO_Init(GPIOA, &GPIO_InitStructure);

  GPIO_PinAFConfig(GPIOA, GPIO_PinSource2, GPIO_AF_TIM5);


TIM_DeInit(TIM8);
TIM_DeInit(TIM5);
/* Time base configuration//133.333uS */
TIM_TimeBaseStructure.TIM_Period = 4000;  
TIM_TimeBaseStructure.TIM_Prescaler = 0;  //Ô¤·ÖƵÊýÎÞ
TIM_TimeBaseStructure.TIM_ClockDivision = TIM_CKD_DIV1; //ʱÖÓ²»·ÖƵ
TIM_TimeBaseStructure.TIM_CounterMode = TIM_CounterMode_Up; //ÏòÉϼÆÊý
TIM_TimeBaseStructure.TIM_RepetitionCounter = 0;
TIM_TimeBaseInit(TIM8, &TIM_TimeBaseStructure);
TIM_TimeBaseInit(TIM5, &TIM_TimeBaseStructure);


/* PWM1 Mode configuration:TIM3 Channel4 */
TIM_OCInitStructure.TIM_OCMode = TIM_OCMode_PWM1;   //PWM1ΪÕý³£Õ¼¿Õ±Èģʽ¡£
TIM_OCInitStructure.TIM_OutputState = TIM_OutputState_Enable; //ʹÄÜÊä³ö
TIM_OCInitStructure.TIM_OutputNState = TIM_OutputNState_Enable; //ʹÄÜÊä³ö

TIM_OCInitStructure.TIM_Pulse = 2000; //Õ¼¿Õ±ÈÉèÖÃ
TIM_OCInitStructure.TIM_OCPolarity = TIM_OCPolarity_High;
TIM_OCInitStructure.TIM_OCNPolarity = TIM_OCNPolarity_Low;

TIM_OCInitStructure.TIM_OCIdleState = TIM_OCIdleState_Set;
TIM_OCInitStructure.TIM_OCNIdleState = TIM_OCIdleState_Reset;

TIM_OC2Init(TIM8, &TIM_OCInitStructure);
TIM_OC2PreloadConfig(TIM8, TIM_OCPreload_Enable);  //CCR×Ô¶¯×°ÔعرÕ
TIM_ARRPreloadConfig(TIM8, ENABLE);//ARRÖØÔØÊ¹ÄÜ


  /* PWM1 Mode configuration:TIM5 Channel3 */
TIM_OCInitStructure.TIM_OCMode = TIM_OCMode_PWM1;//PWM1ΪÕý³£Õ¼¿Õ±Èģʽ¡£
// TIM_OCInitStructure.TIM_OutputState = TIM_OutputState_Enable;
  TIM_OCInitStructure.TIM_Pulse = 2000;
TIM_OCInitStructure.TIM_OCPolarity = TIM_OCPolarity_High;
TIM_OCInitStructure.TIM_OCIdleState = TIM_OCIdleState_Reset;

  TIM_OC3Init(TIM5, &TIM_OCInitStructure);
TIM_OC3PreloadConfig(TIM5, TIM_OCPreload_Enable);  //CCR×Ô¶¯×°ÔعرÕ
TIM_ARRPreloadConfig(TIM5, ENABLE);//ARRÖØÔØÊ¹ÄÜ

TIM_Cmd(TIM8, ENABLE);
TIM_CtrlPWMOutputs(TIM8, ENABLE);

TIM_Cmd(TIM5, ENABLE);
TIM_CtrlPWMOutputs(TIM5, ENABLE);

结果是TIM5有波形,Tim8的引脚上没有波形。不知道问题在哪里啊!搞了一天啦。哎

收藏 评论2 发布时间:2017-11-23 10:32

举报

2个回答
回答时间:2017-11-23 10:36:19
楼主你到底用的是TIM8还是TIM3呢?
回答时间:2017-11-23 10:37:52
可以自己用STM32CubeMX进行配置,参考STM32CubeMX的配置进行更改。

所属标签

相似问题

关于
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
意法半导体官网
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
官方最新发布
STM32N6 AI生态系统
STM32MCU,MPU高性能GUI
ST ACEPACK电源模块
意法半导体生物传感器
STM32Cube扩展软件包
关注我们
微信公众号二维码 微信公众号
手机版二维码 手机版