完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
单通道PWM输出时(设定低电平时间为600us,设定空闲状态为低电平),在PWM低电平500us时,来了一个刹车信号,发现PWM波形出现了一个短暂的异常脉冲,然后才一直为低。(理论上不应该刹车信号来了之后就会一直变成低电平吗?)这个异常脉冲是什么原因?
程序配置如下: /PWM模式配置///配置为PWM模式1tiM_OCInitStructure.OCMode = TIM_OCMODE_PWM1;TIM_OCInitStructure.Pulse = ChannelPulse;//初始 50%TIM_OCInitStructure.OCPolarity = TIM_OCPOLARITY_LOW;TIM_OCInitStructure.OCIdleState = TIM_OCIDLESTATE_RESET;//初始化通道1输出PWMHAL_TIM_PWM_ConfigChannel( TIM_TimeBaseStructure, TIM_OCInitStructure,TIM_CHANNEL_1);/ 自动输出使能,断路、死区时间和锁定配置 /TIM_BDTRInitStructure.OffStateRunMode = TIM_OSSR_ENABLE;TIM_BDTRInitStructure.OffStateIDLEMode = TIM_OSSI_ENABLE;TIM_BDTRInitStructure.LockLevel = TIM_LOCKLEVEL_1;TIM_BDTRInitStructure.DeadTime = 11;TIM_BDTRInitStructure.BreakState = TIM_BREAK_ENABLE;TIM_BDTRInitStructure.BreakPolarity = TIM_BREAKPOLARITY_LOW;TIM_BDTRInitStructure.AutomaticOutput = TIM_AUTOMATICOUTPUT_ENABLE;HAL_TIMEx_ConfigBreakDeadTime( TIM_TimeBaseStructure, TIM_BDTRInitStructure);/ 定时器通道1输出PWM /HAL_TIM_PWM_Start( TIM_TimeBaseStructure,TIM_CHANNEL_1); |
|
相关推荐
1个回答
|
|
严格地说,刹车后输出的空闲状态电平,这个电平跟你当初的配置是有关系的。
我看你已经开启了死区配置。以OCx为例,首先它在死区时间内按照CCxP的配置位来输出, 然后输出之前配置的OCx空闲状态的输出电平。 结合你目前的代码配置,你的极性选择控制是低有效,即CCxp=1. 这样看来是可能出现你反映的情况的。 |
|
|
|
只有小组成员才能发言,加入小组>>
请教:在使用UDE STK时,单片机使用SPC560D30L1,在配置文件怎么设置或选择?里面只有SPC560D40的选项
2270 浏览 1 评论
3044 浏览 1 评论
请问是否有通过UART连接的两个微处理器之间实现双向值交换的方法?
1619 浏览 1 评论
3433 浏览 6 评论
5777 浏览 21 评论
780浏览 4评论
1149浏览 4评论
在Linux上安装Atollic TRUEStudio的步骤有哪些呢?
419浏览 3评论
使用DMA激活某些外设会以导致外设无法工作的方式生成代码是怎么回事
1133浏览 3评论
1181浏览 3评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-8-19 11:36 , Processed in 0.985549 second(s), Total 76, Slave 60 queries .
Powered by 电子发烧友网
© 2015 www.ws-dc.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号