stm32定时器通道选择里的通道是什么意思

君,已阅读到文档的结尾了呢~~
stm32f407定时器各通道对应引脚
扫扫二维码,随身浏览文档
手机或平板扫扫即可继续访问
stm32f407定时器各通道对应引脚
举报该文档为侵权文档。
举报该文档含有违规或不良信息。
反馈该文档无法正常浏览。
举报该文档为重复文档。
推荐理由:
将文档分享至:
分享完整地址
文档地址:
粘贴到BBS或博客
flash地址:
支持嵌入FLASH地址的网站使用
html代码:
&embed src='/DocinViewer--144.swf' width='100%' height='600' type=application/x-shockwave-flash ALLOWFULLSCREEN='true' ALLOWSCRIPTACCESS='always'&&/embed&
450px*300px480px*400px650px*490px
支持嵌入HTML代码的网站使用
您的内容已经提交成功
您所提交的内容需要审核后才能发布,请您等待!
3秒自动关闭窗口想用STM32的一个通用定时器的一个通道作为pwm输出控制步进电机,另一个通道用作输入捕获来计脉冲的个数,请问这样可以吗?
&&&&&&&&&&
在线时间1396 小时
威望6274分
芯币21411枚
E金币300枚
TA的帖子TA的资源
可以,但是捕获周期不大于pwm周期
在线时间3 小时
TA的帖子TA的资源
一粒金砂(中级), 积分 10, 距离下一级还需 190 积分
一粒金砂(中级), 积分 10, 距离下一级还需 190 积分
想用定时器的pwm模式输出可变频率的方波,并且想用同一个定时器知道我的pwm输出脉冲个数,怎么实现?用同一个定时器可以吗?
在线时间1396 小时
威望6274分
芯币21411枚
E金币300枚
TA的帖子TA的资源
输出个数就是定时器的溢出计数
在线时间2303 小时
威望10112分
E金币509枚
TA的帖子TA的资源
能肯定是能,为什么不用另一个定时器,反正STM32定时器有的是
有的多达8个
在线时间15 小时
TA的帖子TA的资源
一粒金砂(中级), 积分 8, 距离下一级还需 192 积分
一粒金砂(中级), 积分 8, 距离下一级还需 192 积分
EEWORLD 官方微信
Powered bySTM32F407定时器各通道对应引脚_百度文库
两大类热门资源免费畅读
续费一年阅读会员,立省24元!
STM32F407定时器各通道对应引脚
上传于|0|0|暂无简介
阅读已结束,如果下载本文需要使用0下载券
想免费下载更多文档?
定制HR最喜欢的简历
你可能喜欢怎么在定时器输出通道关闭时输出高电平 - STM32 - 意法半导体STM32/STM8技术社区
后使用快捷导航没有帐号?
查看: 804|回复: 5
怎么在定时器输出通道关闭时输出高电平
在线时间1 小时
主题帖子好友
新手上路, 积分 13, 距离下一级还需 37 积分
新手上路, 积分 13, 距离下一级还需 37 积分
当禁止STM32定时器的互补输出通道时,如TIM_CCxNCmd(TIM1, TIM_Channel_1, TIM_CCxN_Disable);&&用软件仿真看到这个通道输出电平是低电平,有没有办法让这个通道这个时候输出高电平,是不是跟空闲状态电平设置有关,但我把空闲状态电平设高或设低此时这个通道输出的电平都是低电平。求大神帮忙。
在线时间507 小时
ST金币1429
主题帖子好友
设置为输出高电平。
在线时间168 小时
主题帖子好友
高级会员, 积分 705, 距离下一级还需 295 积分
高级会员, 积分 705, 距离下一级还需 295 积分
停止输出脉冲后,切换到强制输出模式,那就是高电平了。
TIM_ForcedOC1Config(TIM1, TIM_ForcedAction_Active);
在线时间664 小时
ST金币4290
主题帖子好友
TIM_OCInitStructure.TIM_OCPolarity = TIM_OCPolarity_H
在线时间559 小时
ST金币2009
主题帖子好友
在配置里设置成高电平
在线时间1 小时
主题帖子好友
新手上路, 积分 13, 距离下一级还需 37 积分
新手上路, 积分 13, 距离下一级还需 37 积分
停止输出脉冲后,切换到强制输出模式,那就是高电平了。
TIM_ForcedOC1Config(TIM1, TIM_ForcedAction_Acti ...
我不是这个意思,比如TIM1_CH1和TIM1_CH1N, 能不能实现当CH1是PWM输出, 而CH1N是一个恒定的高电平, 在电机控制里面,当上桥壁输出PWM是,下桥臂要关断。
站长推荐 /1
Tel: 3-8064
备案号: 苏ICP备号-2
|||意法半导体STM32/STM8技术社区
Powered bySTM32定时器输出比较模式中的疑惑
OCx与OCxREF和CCxP之间的关系
初学STM32,我这个地方卡了很久,现在终于有些明白了,现在把我的理解写下与大家共享,如果有不对的地方,还请指出。
OCxREF就是一个参考信号,并且约定:
OCxREF=1,称OCxREF有效。反之,OCxREF=0,称OCxREF无效;
&‘1’电平(高电平)称为OCxREF的有效电平,‘0’
电平(低电平)称为OCxREF的无效电平。
——依据参考手册:The
output stage generates an intermediate waveform which is then used
for reference:OCxRef (active high). The polarity acts at the end of
the chain.
(翻译)输出阶段产生一个中间波形OCxRef(高有效)作为参考。输出信号的极性体现在信号链的末端。
现在解释几个名词之间的关系:
然后来理解输出比较的几个模式(PWM模式是输出比较模式的特例)
查看TIMx_CCMR1寄存器的OC1M域,有如下定义(摘自最新版的参考手册)
翻译如下:
000:冻结——输出比较寄存器TIMx_CCR1中的内容与计数器TIMx_CNT中的内容之间的比较对输出无影响。(此模式用于时基的生成)
001:当匹配时,设置通道1为有效电平。当计数器TIMx_CNT中的内容与捕捉/比较寄存器1(TIMx_CCR1)中的内容相匹配时,强行拉高OC1REF
010:当匹配时,设置通道1为无效电平。当计数器TIMx_CNT中的内容与捕捉/比较寄存器1(TIMx_CCR1)中的内容相匹配时,强行拉低OC1REF
011:翻转——当TIMx_CNT=
TIMx_CCR1时,OC1REF信号取反。
100:强制无效电平——强行拉低OC1REF
101:强制有效电平——强行拉高OC1REF
110:PWM模式1——向上计数模式中,只要TIMx_CNT&
TIMx_CCR1,通道1有效,反之无效。向下计数模式中,只要TIMx_CNT&
TIMx_CCR1,通道1无效(OC1REF=0),反之有效(OC1REF=1)。
110:PWM模式2——向上计数模式中,只要TIMx_CNT&
TIMx_CCR1,通道1无效,反之有效。向下计数模式中,只要TIMx_CNT&
TIMx_CCR1,通道1有效,反之无效。
我用红色标出了提到有效、无效的地方。不难发现,有效与无效分别对应OC1REF=1和OC1REF=0。这正是我们先前约定的结果。
到此,不同模式下输出比较的结果对OC1REF信号的影响已经很清楚了,但是最终的输出信号是OC1,并不是OC1REF。而且前面有一句话(输出信号的极性体现在信号链的末端)还未做解释。
到底OC1REF与OC1之间有何秘密呢?我们来看下面这个图:
显然,我们只关心红色圈内的信号与方框内的寄存器位以及信号在它们之间是如何传播的。
oc1ref从输出模式控制器(Output
mode controller)开始,分为两路,上面一路至主模式控制器(To the master mode
controller),这里我们不关心它的去向,我们关心的是下面一路,下面一路在进入双路开关之前又被分成了两路——一路是原信号,一路是原信号的非。显然TIMx_CCER中的CC1P位用来控制这个开关,CC1E位控制着整条信号链的通断。
当CC1P=0时(CC1E=1):
当CC1P=1时(CC1E=1):&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
很显然,OC1与OC1REF的关系只受CC1P的影响(CC1E=1)
然而参考手册上对CC1P位是这么描述的:
CC1P=0时:OC1高电平有效
CC1P=1时:OC1低电平有效
根据本文开篇的名词解释,可以这么理解:
CC1P=0时:OC1有效电平是高电平
CC1P=1时:OC1有效电平是低电平
这时就迷惑了,这个高电平有效和低电平有效是啥意思呢?
我们从头分析(整个过程CC1E=1,OC1的输出是允许的):
①假定OC1REF有效(OC1REF=1),那么从OC1REF到OC1的整条信号链上的信号都是有效信号,我们称OC1输出了有效信号。
那这个有效信号是高电平还是低电平呢?
这就是由CC1P决定的:
②假定OC1REF无效(OC1REF=0),那么从OC1REF到OC1的整条信号链上的信号都是无效信号,我们称OC1输出了无效信号。
无效信号的高电平和低电平也是由CC1P决定:
用一张表来总结上述过程:
OC1高电平有效
0(低电平)
OC1低电平有效
1(高电平)
OC1高电平有效
1(高电平)
OC1低电平有效
0(低电平)
显然,OC1REF决定了OC1输出电平是否有效,而CC1P决定了有效电平的极性。
我们抽出上表的后四列:
OC1高电平有效
0(低电平)
OC1低电平有效
1(高电平)
OC1高电平有效
1(高电平)
OC1低电平有效
0(低电平)
我们将表按1、2列合并
OC1高电平有效
0(低电平)
OC1高电平有效
1(高电平)
OC1低电平有效
0(低电平)
OC1低电平有效
1(高电平)
现在很清楚了,从上表中可以清楚地看到CC1P对OC1有效极性的控制。即,OC1的极性只有与CC1P指定的有效极性一致,OC1才能是有效的(绿色部分)。这样就解释了“输出信号的极性体现在信号链的末端”这句话。
然而这条链还未结束,还有个CC1E呢。当然,它就是一个OC1输出使能位而已。
但细心的你可能会发现,参考手册上对CC1E位有这样的描述:
OCx = OCxREF + Polarity
这个式子告诉我们OCx与OCxREF和Polarity(极性,即CCxP位)的关系。
我们上面提到了它们的关系,是分了两种情况(CC1P=0和CC1P=1)表示的,这个式子帮我们将上面关系归纳成了一个。这个式子怎么得来的?
回忆一下数字电路里面的半加器(就是不进位的加法),真值表如下:
0(高有效)
1(低有效)
0(高有效)
1(低有效)
我们写逻辑函数(按黄色部分写):
注意:前面的“+”号表示半加运算(不进位加法),其实是逻辑上的“异或”。
OC1连接到TIMx_CH1上,而TIMx_CH1是复用的。可在参考手册上定时器功能复用部分找到。
下面给出一些定时器功能复用的表格:
已投稿到:
以上网友发言只代表其个人观点,不代表新浪网的观点或立场。

我要回帖

更多关于 定时器通道 的文章

 

随机推荐