打印

OCxN_EN是什么输出信号?

[复制链接]
16246|23
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
60岁老头|  楼主 | 2008-8-28 22:09 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
    参考手册 表37 带刹车功能的互补输出通道 OCx 和 OCxN 的控制位中
    当MOE,OSSI,OSSR,CCxE,CCxNE = 1,X,0,0,0时,
OCx=CCxP, OCxN=CCxNP。OCx_EN=0,OCxN_EN=0。

OCx_EN,OCxN_EN是什么输出信号?



沙发
60岁老头|  楼主 | 2008-8-28 22:41 | 只看该作者

OC/OCN使能输出信号是什么?

  12.5.18 刹车和死区寄存器(TIM1_BDTR)中关于OSSR是这么说的:

运行模式下“关闭状态”选择
该位用于当MOE=1且通道为互补输出时。没有互补输出的定时器中不存在OSSR位。
参考OC/OCN使能的详细说明(12.5.9节,捕获/比较使能寄存器(TIM1_CCER))。
0:当定时器不工作时,禁止OC/OCN输出(OC/OCN使能输出信号=0);
1:当定时器不工作时,一旦CCxE=1或CCxNE=1,开启OC/OCN输出并输出无效电平。
OC/OCN使能输出信号=1。

那么,OC/OCN使能输出信号是什么信号?在什么地方?

使用特权

评论回复
板凳
lianshumou| | 2008-8-28 23:13 | 只看该作者

反向PWM

使用特权

评论回复
地板
60岁老头|  楼主 | 2008-8-28 23:23 | 只看该作者

不明白,请详细指点。

使用特权

评论回复
5
60岁老头|  楼主 | 2008-8-29 14:04 | 只看该作者

难道这个问题太简单而无人指点!

使用特权

评论回复
6
JIANG_WX| | 2008-8-29 14:41 | 只看该作者

OCx_EN,OCxN_EN是输出使能信号

OCx_EN,OCxN_EN是OCx/OCxN通道的输出使能信号

使用特权

评论回复
7
60岁老头|  楼主 | 2008-8-29 14:46 | 只看该作者

关键是OCx_EN,OCxN_EN=0时,OC/OCN各引脚是什么状态。

    目前,我只能猜想OCx_EN,OCxN_EN是内部的一个信号。
    但关键是:当=0时,OC/OCN各引脚是什么状态?阻态吗?
    不搞清楚,是要烧驱动器的。

    特请香主指点。

使用特权

评论回复
8
lianshumou| | 2008-8-29 14:55 | 只看该作者

不使能时输出你设置的无效电平.

当然如果你设置为了普通IO的话那就是IO本身输出的信号了! 只在设为了Time的输出,只要不使能就是无效状态.

使用特权

评论回复
9
60岁老头|  楼主 | 2008-8-29 15:31 | 只看该作者

我明白“不使能时输出设置的无效电平”

    但这个“不使能”是CCxE,CCxEN。
    现在说的是 OCx_EN,OCxN_EN。它俩是一会事吗?

    请再看表13中有如下描述:
    尽管CCxE都=0,但
    当OSSR=0时,描述为:输出禁止(与定时器断开),OCx=CCxP ,OCx_EN=0
    当OSSR=1时,描述为:关闭状态(输出使能且为无效电平),OCx=CCxP ,OCx_EN=1
    既然OSSR被称为 “运行模式下“关闭状态”选择”,说明两者是不同的关闭状态。

使用特权

评论回复
10
lianshumou| | 2008-8-29 15:52 | 只看该作者

好好看看那些位的定义吧!TIM1和TIM8中要麻烦很多!

一两句话说不清楚

使用特权

评论回复
11
lianshumou| | 2008-8-29 16:00 | 只看该作者

如下

TIM1_CR2
TIM1_CCER
CC1NE:输入/捕获1互补输出使能
0:关闭- OC1N禁止输出,因此OC1N的输出电平依赖于MOE,OSSI,OSSR,OIS1,OIS1N,CC1E
位的值。
1:开启- OC1N信号输出到对应的输出引脚,其输出电平依赖于MOE,OSSI,OSSR,OIS1,OIS1N,
CC1E位的值。

CC1E:输入/捕获1输出使能
CC1通道配置为输出:
0: 关闭- OC1禁止输出,因此OC1的输出电平依赖于MOE,OSSI,OSSR,OIS1,OIS1N,CC1NE
位的值。
1: 开启- OC1信号输出到对应的输出引脚,其输出电平依赖于MOE,OSSI,OSSR,OIS1,OIS1N,
CC1NE位的值。


使用特权

评论回复
12
60岁老头|  楼主 | 2008-8-29 16:35 | 只看该作者

已经“好好看看那些位的定义”了。

    在9楼我写过: 
   “尽管CCxE都=0,但
    当OSSR=0时,描述为:输出禁止(与定时器断开),OCx=CCxP ,OCx_EN=0
    当OSSR=1时,描述为:关闭状态(输出使能且为无效电平),OCx=CCxP ,OCx_EN=1
    既然OSSR被称为 “运行模式下“关闭状态”选择”,说明两者是不同的关闭状态。”

    请直接指点两个“不同的关闭状态”在脚上各是什么?

使用特权

评论回复
13
lianshumou| | 2008-8-29 17:01 | 只看该作者

那个表里写得很清楚

使用特权

评论回复
14
60岁老头|  楼主 | 2008-8-29 17:10 | 只看该作者

于是我们又回到开始的问题:OCx_EN=0什么意思。

使用特权

评论回复
15
JIANG_WX| | 2008-8-29 17:22 | 只看该作者

OCx_EN是内部控制信号

OCx_EN是内部控制信号,它控制OCREF信号是否连接到TIM1的输出控制电路:
OCx_EN=0:OCREF信号不连接TIM1的输出控制电路;
OCx_EN=1:OCREF信号连接TIM1的输出控制电路。

至于 两个“不同的关闭状态”在脚上的电平,表37已经列出了在各种设置下的电平值了呀!
你只需要关注在各种设置下芯片引脚上的电平值!


使用特权

评论回复
16
60岁老头|  楼主 | 2008-8-29 17:25 | 只看该作者

形式上,结果都是OCx=CCxP。但

    形式上,结果都是OCx=CCxP。但一个是OCx_EN=0,另一个是OCx_EN=1。
    如果OCx_EN是内部的一个信号,我们可以不管它。
    但是,问题变成为:OSSR是干什么的?根据什么去设置它?

使用特权

评论回复
17
60岁老头|  楼主 | 2008-8-29 18:20 | 只看该作者

还是要感谢JIANG_WX lianshumou两位。

    我们讨论的问题,都是围绕着“安全”两个字。2位今后若有心得,请让老头共享。

    对于MCU控制电机,我想会有不少难题。STM32的硬件设计者也不容易。
    我相信若文稿是STM32的总体来写,决不会是现在模样。
    

使用特权

评论回复
18
lianshumou| | 2008-8-29 19:06 | 只看该作者

不同的片子是不一样的!

之前用的那个芯片的输出脚会在不使能时输出高阻!
设置也远没有这么复杂!
STM32在这两位的描述不清楚! OSSR用在MOE = 1时,OSSI用在MOE = 0时,两个位的功能应当是一样的!只是用在不同的情况下!

使用特权

评论回复
19
60岁老头|  楼主 | 2008-8-29 19:25 | 只看该作者

还有问题请教lianshumou

    CCxP配置方法是:0:OC1高电平有效,1:OC1低电平有效。
若设置CCxP=0(即高有效)。那么OCx=CCxP是什么意思?=1还是=0?

    另外,表13中, “异步地:”是什么意思?

    

使用特权

评论回复
20
lianshumou| | 2008-8-29 22:27 | 只看该作者

异步的意思就是这个信号是不经过内部时钟同步的

只要这个信号变低,不管在什么时刻,输出立即响应!而不必等内部时钟边沿的来临!

使用特权

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

本版积分规则

23

主题

158

帖子

0

粉丝