打印

STM32如何配置PWM刹车?

[复制链接]
6593|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 | 只看该作者
没人吗?
顶啊

使用特权

评论回复
5
outstanding| | 2013-8-16 08:59 | 只看该作者
没有整过

使用特权

评论回复
6
lsj9383|  楼主 | 2013-8-16 09:36 | 只看该作者
求助啊!!!

使用特权

评论回复
7
lsj9383|  楼主 | 2013-8-16 17:54 | 只看该作者
算了,已经解决了,这论坛人好少

使用特权

评论回复
8
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相反的。这样可以防止上下桥臂导通,不知道我的理解对不对。



使用特权

评论回复
9
lsj9383|  楼主 | 2013-8-21 15:33 | 只看该作者
crazy2012 发表于 2013-8-16 21:56
不是人少,是楼主没用固件库函数写法,直接写寄存器,大家都不想看你代码。今天我也恰好遇到这个问题了。 ...

问题已经解决。
我看不懂stm32的库函数。
领导说stm32的库函数写的太垃圾,没有用的必要...

使用特权

评论回复
10
lsj9383|  楼主 | 2013-8-21 15:33 | 只看该作者
crazy2012 发表于 2013-8-16 21:56
不是人少,是楼主没用固件库函数写法,直接写寄存器,大家都不想看你代码。今天我也恰好遇到这个问题了。 ...

问题已经解决。
我看不懂stm32的库函数。
领导说stm32的库函数写的太垃圾,没有用的必要...

使用特权

评论回复
11
dzkjdx| | 2014-3-17 12:17 | 只看该作者
我最近也在使用TIM1,就想用软件刹车,不使用硬件刹车。正如楼上所说:软件刹车是不是就是将BDTR的MOE位清0啊?求解!
不过直接写寄存器,对硬件的了解会更深入些。每个人的方式不一样吧。

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

2

主题

13

帖子

1

粉丝