打印

STM32的TIMER功能有多强?

[复制链接]
7838|21
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
violet520|  楼主 | 2008-6-13 11:28 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
STM32的TIMER有4个通道,这4个通道可以随意配置成输入和输入吗?
如果,我把第一个通道配置成外部计数输入,第二个通道配置成PWM 输出,第三个通道配置成捕获输入,第四个通道配置成波形输出,这样4个通道能同时工作吗?因为只用一个定时器实现这些功能好像不太可能。高人解释一下。
沙发
香水城| | 2008-6-13 11:33 | 只看该作者

楼主的要求可以满足,STM32中每个定时器都有四个独立的通道

每个通道互不干扰,只用一个定时器可以很容易地实现这些功能。

使用特权

评论回复
板凳
zheng79| | 2008-6-13 11:42 | 只看该作者

不可以是完全独立的

除非楼主你的PWM输出和波形输出的时基是以计数输入为基准的.

使用特权

评论回复
地板
香水城| | 2008-6-13 11:46 | 只看该作者

3楼说的对,我没有注意到楼主的第一个要求是“外部计数输

“外部计数输入”比较特别,如果没有这一项,其他三项可以在一个定时器中实现。

使用特权

评论回复
5
violet520|  楼主 | 2008-6-13 13:43 | 只看该作者

还是不太明白

谢谢大家的回答,还是不太明白,谁能讲得清楚一些。
4个通道能同时作为外部计数吗?
4个通道能同时作为PWM输出吗?
如果能的话,在硬件上是怎么实现的?

使用特权

评论回复
6
香水城| | 2008-6-13 14:43 | 只看该作者

把外部脉冲做为STM32的定时器时钟,则可以实现外部计数功能

一个定时器只可能有一个输入时钟,因此做外部计数时,一个定时器只能对一个外部信号计数。

STM32定时器下属的通道不能做外部计数,但可以有其它功能模式:输入捕获、输出比较、PWM输入、PWM输出、单脉冲输出等。因此每个通道都可以单独配置成这些模式之一,而且每个通道的模式可以不一样也可以一样,所以4个通道能同时作为PWM输出。

楼主的问题“第一个通道配置成外部计数输入,第二个通道配置成PWM 输出,第三个通道配置成捕获输入,第四个通道配置成波形输出”,根据上面介绍的原则,“外部计数”不是定时器通道的某种模式,所以我在4楼要排除这个功能,你列出的其它三种功能可以分别在同一定时器的不同通道上实现。顺便说一下,我理解你的“波形输出”就是PWM输出。

使用特权

评论回复
7
violet520|  楼主 | 2008-6-13 14:53 | 只看该作者

波形输出

谢谢版主, “波形输出”指的输出方波,不是PWM,不知道利用输出比较模式能不能实现这个功能?
就是想在通道引脚上自动的输出一定频率的方波,如40khz。

使用特权

评论回复
8
香水城| | 2008-6-13 15:03 | 只看该作者

输出一定频率的方波,这不就是PWM输出吗?

只不过它的占空比是固定的1:1,或50%。

使用特权

评论回复
9
xwj| | 2008-6-13 15:11 | 只看该作者

PWM是指占空比可调的的方波

占空比不可调的画那就不是PWM了

使用特权

评论回复
10
violet520|  楼主 | 2008-6-13 15:25 | 只看该作者

输出一定频率的方波,这不就是PWM输出吗?

按版主说的采用PWM模式应该也能出来方波,我看资料还有比较输出模式,也就匹配的时候,我设置翻转引脚电平,我觉得也能出来方波,这两种是不是都可以?
另外用这两种方法最大能达到多少频率的方波?

使用特权

评论回复
11
香水城| | 2008-6-13 17:04 | 只看该作者

请楼主具体提出你的需求,这样比较容易讨论

我们不必在此纸上谈兵。

你的这些问题太笼统,回答这些问题意味着给你讲一遍手册,既然这样为什么不自己看?看不懂再来讨论。

使用特权

评论回复
12
kfawj| | 2008-6-14 11:42 | 只看该作者

请教大家一个菜鸟问题。

在STM32F10X参考手册上的第21(实际36)页,有一个时钟树。
上面"APB1 Prescaler /1,2,4,8,16"下面"TIM2,3,4 *1,2 Multiplier"是不是可倍频的意思呀?
我没有找到这一项的设置呢?
哪一个寄存器位是设置这一项?

菜鸟正在学习,大家帮忙呀!
谢谢啦!!!

使用特权

评论回复
13
香水城| | 2008-6-14 12:27 | 只看该作者

在一个定时器的不同通道实现不同的功能是有条件的

请楼主能够提出具体的需求,这样方便讨论。

使用特权

评论回复
14
ar3000a| | 2008-6-14 22:04 | 只看该作者

我觉得

最有用的是好几个定时器可以联合使用, 这个单片机上没有。

使用特权

评论回复
15
violet520|  楼主 | 2008-6-16 09:51 | 只看该作者

我需要实现的功能

我需要控制3种电机,步进电机,伺服电机和直流电机,其中步进电机,伺服电机带驱动器,我们控制步进电机,伺服电机只需要给脉冲信号,同时需要接收编码器的反馈信号,直流电机需要我们提供PWM信号。
请版主指教。

使用特权

评论回复
16
香水城| | 2008-6-16 10:55 | 只看该作者

能把你的要求提得再具体一点吗?

打算用什么型号的STM32芯片?多少脚?

如果是使用最大配置的芯片,可以很简单地分别用一个定时器控制一种电机,不必考虑用单一的定时器产生多路信号。

关于PWM信号,你要求的频率是多少?每个电机的频率都一样吗?

使用特权

评论回复
17
violet520|  楼主 | 2008-6-16 12:16 | 只看该作者

再具体点

STM32F103,100脚
但是很多引脚已经使用,所以必须考虑用单一的定时器产生多路信号,这样能实现吗?
其次,我用比较输出模式能自动产生脉冲波形吗?
谢谢版主解答。

使用特权

评论回复
18
香水城| | 2008-6-16 13:52 | 只看该作者

还是不太明白——你要求几路PWM输出?频率调节范围是多少

占空比范围是多少?

我对如何驱动步进电机、伺服电机和直流电机不熟悉,请说明白些。

还有,你说“很多引脚已经使用”,不能调换吗?STM32的很多外设引脚有重映射功能。

使用特权

评论回复
19
violet520|  楼主 | 2008-6-16 14:31 | 只看该作者

版主能先回答我问题吗?

使用特权

评论回复
20
香水城| | 2008-6-16 14:50 | 只看该作者

比较输出模式能自动产生脉冲波形!

使用特权

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

本版积分规则

33

主题

123

帖子

1

粉丝