STM32如何配置PWM刹车?

[复制链接]
7473|10
 楼主| lsj9383 发表于 2013-8-14 21:18 | 显示全部楼层 |阅读模式
我的刹车配置如下:
TIM1->CR2 |= 1<<8 | 1<<9 | 1<<10 | 1<<11 | 1<<12 | 1<<13;                //刹车后电平,我是设置的均为高(OISx 和 OISxN位均为1)
TIM1->BDTR |= 1<<12;                //开启刹车功能                       BKE位为1
TIM1->BDTR |= 1<<10;                //空闲下“关闭状态”                 OSSI位为1

在配置完pwm后,开启所有输出(MOE为1)
可以正常输出PWM。

当我软件刹车(软件置moe为0,我不知道这个方式是不是软件刹车,我现在是这样理解的)
PWM口输出均为低电平,和设想的高电平不符。


希望有配置过的朋友,分享下经验,小生在这里谢谢了~~~
xxiao6130 发表于 2013-8-15 11:28 | 显示全部楼层
请问你知道STM8软件刹车是怎么弄不?
 楼主| lsj9383 发表于 2013-8-15 17:07 | 显示全部楼层
xxiao6130 发表于 2013-8-15 11:28
请问你知道STM8软件刹车是怎么弄不?

我也不太清除,才问啊。
都没人回
 楼主| lsj9383 发表于 2013-8-15 21:34 | 显示全部楼层
没人吗?
顶啊
outstanding 发表于 2013-8-16 08:59 | 显示全部楼层
没有整过
 楼主| lsj9383 发表于 2013-8-16 09:36 | 显示全部楼层
求助啊!!!
 楼主| lsj9383 发表于 2013-8-16 17:54 | 显示全部楼层
算了,已经解决了,这论坛人好少
crazy2012 发表于 2013-8-16 21:56 | 显示全部楼层
本帖最后由 crazy2012 于 2013-8-16 22:02 编辑
lsj9383 发表于 2013-8-16 17:54
算了,已经解决了,这论坛人好少

不是人少,是楼主没用固件库函数写法,直接写寄存器,大家都不想看你代码。今天我也恰好遇到这个问题了。我用的是6step的代码。发现空闲时间(也就是刹车以后的时间,不知道这样说对不对)上下两个通道也是不能按照我的设置进行Set或者Reset。我发现规律好像是刚好和TIM_OCPolarity 和TIM_OCNPolarity相反的。这样可以防止上下桥臂导通,不知道我的理解对不对。



1.jpg
 楼主| lsj9383 发表于 2013-8-21 15:33 | 显示全部楼层
crazy2012 发表于 2013-8-16 21:56
不是人少,是楼主没用固件库函数写法,直接写寄存器,大家都不想看你代码。今天我也恰好遇到这个问题了。 ...

问题已经解决。
我看不懂stm32的库函数。
领导说stm32的库函数写的太垃圾,没有用的必要...
 楼主| lsj9383 发表于 2013-8-21 15:33 | 显示全部楼层
crazy2012 发表于 2013-8-16 21:56
不是人少,是楼主没用固件库函数写法,直接写寄存器,大家都不想看你代码。今天我也恰好遇到这个问题了。 ...

问题已经解决。
我看不懂stm32的库函数。
领导说stm32的库函数写的太垃圾,没有用的必要...
dzkjdx 发表于 2014-3-17 12:17 | 显示全部楼层
我最近也在使用TIM1,就想用软件刹车,不使用硬件刹车。正如楼上所说:软件刹车是不是就是将BDTR的MOE位清0啊?求解!
不过直接写寄存器,对硬件的了解会更深入些。每个人的方式不一样吧。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

2

主题

13

帖子

1

粉丝
快速回复 在线客服 返回列表 返回顶部