MDK软件仿真PWM输出频率和下载到硬件示波器测量的频率相差太大

2019-10-11 16:36发布

如题,软件使用MDK5.10版本,硬件使用STM32F103VET6,使用TIM1输出3路互补PWM波,使用的是3.5的库,周期设置为720(频率100K),使用MDK软件仿真时逻辑分析仪得到的波形频率正常,但下载到硬件后用示波器测量波形输出脚频率只有3HZ左右,请教原子哥和各位坛友是什么问题?
#define MOSFET_PWM_Period 719
#define MOSFET_PWM_Prescaler 0
RCC_APB2PeriphClockCmd(RCC_APB2Periph_TIM1 | RCC_APB2Periph_TIM8,ENABLE);
TIM_TimeBaseInitStructure.TIM_Period = MOSFET_PWM_Period;
TIM_TimeBaseInitStructure.TIM_Prescaler = MOSFET_PWM_Prescaler;
TIM_TimeBaseInitStructure.TIM_ClockDivision = TIM_CKD_DIV1;
TIM_TimeBaseInitStructure.TIM_CounterMode = TIM_CounterMode_Up;
TIM_TimeBaseInitStructure.TIM_RepetitionCounter = 0;

TIM_OCInitStructure.TIM_OCMode = TIM_OCMode_PWM1;
TIM_OCInitStructure.TIM_OutputState = TIM_OutputState_Enable;
TIM_OCInitStructure.TIM_OCPolarity = TIM_OCPolarity_High;
TIM_OCInitStructure.TIM_OCIdleState = TIM_OCIdleState_Set;
TIM_OCInitStructure.TIM_OutputNState = TIM_OutputNState_Enable;
TIM_OCInitStructure.TIM_OCNPolarity = TIM_OCNPolarity_High;
TIM_OCInitStructure.TIM_OCNIdleState = TIM_OCNIdleState_Reset;
TIM_OCInitStructure.TIM_Pulse = BT1_Charge_Val;


友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
2条回答
暗星归来
1楼-- · 2019-10-11 17:31
已经解决了,示波器有问题,换了台示波器好了
暗星归来
2楼-- · 2019-10-11 19:49
我这里只贴了基本参数配置,那些使能的命令就不贴了

一周热门 更多>