求助,STM32F405PWM输出不到100K就成三角波了

2019-07-14 18:17发布

tiM3输出PWM 管脚直接连示波器 还不到100K就成三角波了 有大神做过1M的PWM方波测试吗
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
8条回答
pailisi
1楼-- · 2019-07-14 23:06
已经开启100M了,下面是gpio和tim的设置代码,请指教
GPIO_InitStructure.GPIO_Pin =  GPIO_Pin_6;
GPIO_InitStructure.GPIO_Mode = GPIO_Mode_AF;
GPIO_InitStructure.GPIO_OType = GPIO_OType_PP;
GPIO_InitStructure.GPIO_Speed = GPIO_Speed_100MHz;
GPIO_InitStructure.GPIO_PuPd = GPIO_PuPd_NOPULL;
  
GPIO_Init(GPIOA, &GPIO_InitStructure);
 
GPIO_PinAFConfig(GPIOA, GPIO_PinSource6, GPIO_AF_TIM3); 
 
TIM_TimeBaseStructure.TIM_Period = 60000;
TIM_TimeBaseStructure.TIM_Prescaler = 0;//PrescalerValue;
TIM_TimeBaseStructure.TIM_ClockDivision = 0;//0;
TIM_TimeBaseStructure.TIM_CounterMode = TIM_CounterMode_Up;
TIM_TimeBaseInit(TIM3, &TIM_TimeBaseStructure);
TIM_OCInitStructure.TIM_OCMode = TIM_OCMode_PWM1;
TIM_OCInitStructure.TIM_OutputState = TIM_OutputState_Enable;
TIM_OCInitStructure.TIM_Pulse = CCR1_Val;
 TIM_OCInitStructure.TIM_OCPolarity = TIM_OCPolarity_High;
TIM_OC1Init(TIM3, &TIM_OCInitStructure);
 
TIM_OC1PreloadConfig(TIM3, TIM_OCPreload_Enable);
TIM_ARRPreloadConfig(TIM3, ENABLE);
 
TIM_Cmd(TIM3, ENABLE); 
pailisi
2楼-- · 2019-07-15 01:06
 担心是硬件问题,换了一块板子测试,输出还是三角波
后改了程序,测试tim1的输出,结果让人震惊,都是很好的方波
相同的程序代码,为什么tim1和tim3得到的结果不一样呢
guanrui1202
3楼-- · 2019-07-15 01:49
应该不太可能,使不是频率设错了。
UserMen
4楼-- · 2019-07-15 02:04
 精彩回答 2  元偷偷看……
Sabrina_cc
5楼-- · 2019-07-15 03:44
应该还是io口的设置问题,100khz不高的
nvhwdfwre
6楼-- · 2019-07-15 04:21
很可能是输出IO口的问题

一周热门 更多>