OpenEdv-开源电子网

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

pwm输出为什么有一段正常,一段不正常

[复制链接]

17

主题

63

帖子

0

精华

初级会员

Rank: 2

积分
120
金钱
120
注册时间
2015-9-24
在线时间
14 小时
发表于 2015-9-24 09:50:14 | 显示全部楼层 |阅读模式
5金钱
void TIM14_PWM_Init(void)
{                             
    //????·??è????????IO???è??
    
    GPIO_InitTypeDef GPIO_InitStructure;
    TIM_TimeBaseInitTypeDef  TIM_TimeBaseStructure;
    TIM_OCInitTypeDef  TIM_OCInitStructure;
    
    RCC_APB1PeriphClockCmd(RCC_APB1Periph_TIM14,ENABLE);      //TIM14?±??????    
    RCC_AHB1PeriphClockCmd(RCC_AHB1Periph_GPIOF, ENABLE);     //????PORTF?±??    
    
    GPIO_PinAFConfig(GPIOF,GPIO_PinSource9,GPIO_AF_TIM14); //GPIOF9???????¨?±?÷14
    
    GPIO_InitStructure.GPIO_Pin = GPIO_Pin_9;           //GPIOF9
    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(GPIOF,&GPIO_InitStructure);              //??????PF9
      
    TIM_TimeBaseStructure.TIM_Prescaler=83;                                   //?¨?±?÷·???
    TIM_TimeBaseStructure.TIM_CounterMode=TIM_CounterMode_Up;         //?ò??????????
    TIM_TimeBaseStructure.TIM_Period=99;                                               //×?????×°????
    TIM_TimeBaseStructure.TIM_ClockDivision=TIM_CKD_DIV1;
    
    TIM_TimeBaseInit(TIM14,&TIM_TimeBaseStructure);            //???????¨?±?÷14
    
   
    TIM_OCInitStructure.TIM_OCMode = TIM_OCMode_PWM1;       //?????¨?±?÷????:TIM?????í???÷??????2
    
    TIM_OCInitStructure.TIM_Pulse =50;     //?è??????±?
     TIM_OCInitStructure.TIM_OutputState = TIM_OutputState_Enable;          //±???????????
    TIM_OCInitStructure.TIM_OCPolarity = TIM_OCPolarity_Low;        //????????:TIM????±?????????
    TIM_OC1Init(TIM14, &TIM_OCInitStructure);          //?ù??T???¨???????????????èTIM1 4OC1

    TIM_OC1PreloadConfig(TIM14, TIM_OCPreload_Enable);         //????TIM14??CCR1?????¤×°???????÷
 
  TIM_ARRPreloadConfig(TIM14,ENABLE);         //ARPE????
    
    TIM_Cmd(TIM14, ENABLE);         //????TIM14
 
                                          
}  

初始化这个函数以后 STM32 F4007 板子,为什么pF9 输出的方波不正常,一会有,一会没有。  除了10khz的波以外,  就是规律的有一段时间是没有波形的,请问下为什么呢?




最佳答案

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

检查其他代码.问题不在你发的代码里面.
正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165371
金钱
165371
注册时间
2010-12-1
在线时间
2110 小时
发表于 2015-9-24 09:50:15 | 显示全部楼层
检查其他代码.问题不在你发的代码里面.
我是开源电子网www.openedv.com站长,有关站务问题请与我联系。
正点原子STM32开发板购买店铺http://openedv.taobao.com
正点原子官方微信公众平台,点击这里关注“正点原子”
回复

使用道具 举报

5

主题

29

帖子

0

精华

初级会员

Rank: 2

积分
93
金钱
93
注册时间
2015-5-13
在线时间
7 小时
发表于 2015-9-24 12:43:21 | 显示全部楼层
。。。占空比是什么,怎么算出来的,你看一下吧
回复

使用道具 举报

17

主题

63

帖子

0

精华

初级会员

Rank: 2

积分
120
金钱
120
注册时间
2015-9-24
在线时间
14 小时
 楼主| 发表于 2015-9-24 14:41:41 | 显示全部楼层
回复【2楼】有一天:
---------------------------------
占空比难道不是50%吗? 我以为周期100,计数记到50就翻转,所以占空比是50%啊。
回复

使用道具 举报

17

主题

63

帖子

0

精华

初级会员

Rank: 2

积分
120
金钱
120
注册时间
2015-9-24
在线时间
14 小时
 楼主| 发表于 2015-9-24 14:43:27 | 显示全部楼层
回复【2楼】有一天:
---------------------------------
求解答一下。
回复

使用道具 举报

17

主题

63

帖子

0

精华

初级会员

Rank: 2

积分
120
金钱
120
注册时间
2015-9-24
在线时间
14 小时
 楼主| 发表于 2015-9-25 10:15:40 | 显示全部楼层
回复【5楼】正点原子:
---------------------------------
谢谢,已经正常了。
回复

使用道具 举报

27

主题

99

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
342
金钱
342
注册时间
2015-4-25
在线时间
70 小时
发表于 2015-9-25 10:33:05 | 显示全部楼层
一般是被中断打断了
回复

使用道具 举报

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

本版积分规则



关闭

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

正点原子公众号

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

GMT+8, 2025-2-25 09:55

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

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