边沿触发和电平触发是什么意思?

电器工程 中断 8085 等级 扳机
2022-01-24 08:33:12

我正在研究 8085 微处理器架构,边缘触发和电平触发这两个词真的让我很困惑。谁能用外行的话给我解释一下?

在研究名为 RST 7.5、RST 6.5、RST 5.5 和 TRAP 的 8085 中断时,我遇到了这些词,它们让我很困惑。在这里,我附上了我正在阅读的一个文档链接,并提到了我的混淆图。

在文档中 RST 7.5 -> 边缘触发 RST 5.5 -> 电平触发。TRAP -> 边沿触发和电平触发。(为什么?它有什么不同吗?)。

文档链接

4个回答

我没有真正阅读您的文档,但我可以理解您为什么感到困惑。但这确实是一个非常简单的概念。让我解释。

触发:这意味着使电路处于活动状态。使电路处于活动状态意味着允许电路接受输入并给出输出。例如假设我们有一个触发器。当电路没有被触发时,即使你给了一些输入数据,它也不会改变存储在触发器内部的数据,也不会改变输出Q或Q'。现在基本上有两种触发方式。触发以时钟脉冲或门控信号的形式给出。根据所使用的触发机制的类型,电路将在时钟脉冲的特定状态下变为活动状态。

  1. 电平触发:在电平触发中,当门控或时钟脉冲处于特定电平时,电路将变为活动状态。这个级别由设计师决定。我们可以有一个负电平触发,其中当时钟信号为低电平时电路处于活动状态,或者当时钟信号为高电平时电路处于活动状态的正电平触发。

  2. 边沿触发:在边沿触发中,电路在时钟信号的下降沿或上升沿激活。例如,如果电路是上升沿触发的,它将恰好在时钟信号从低电平变为高电平的时间接收输入。类似地,在下降沿触发中时钟信号从高电平变为低电平的确切时间进行输入。但请记住,在输入之后,它可以一直处理,直到下一个输入被接受。

这是触发机制的一般描述,这些也适用于 8085 中断。

在 8085 上,TRAP 是一个不可屏蔽的中断,通常用于处理诸如电源故障之类的错误。

如果它是电平触发的,它的代码将永远无法执行,因为它是一个不可屏蔽的中断。处理程序将在它变为活动时开始执行,但它仍然是活动的,因此处理程序将开始执行,但它仍然是活动的,因此处理程序将开始执行等等。因此它必须是边缘触发的.

然而,当线路可能有毛刺时,边沿触发是一个问题。当线路出现故障时,故障可能会导致处理程序被多次调用。这是 TRAP 的一个非常大的问题,因为它是不可屏蔽的并且会导致 RST。

作为一种折衷方案,TRAP 就像是电平触发一样工作,只是它仅在自上次识别以来一直处于低位时才被识别。这确保了 TRAP 处理程序只被调用一次。

这就是他们所说的“边缘触发和电平触发”。

*触发*表示激活电路。电平触发中,当门控或时钟脉冲处于特定电平时,电路将变为活动状态。边沿触发中,电路在时钟信号的下降沿或上升沿激活。

Golaž 和 vsz说得很好:

它正是所说的。

如果设置了边沿中断,则 ISR 只会在脉冲的下降/上升沿触发。如果设置了电平敏感中断(如您所说),则每次相应引脚上有低电平/高电平信号时都会触发 ISR。

简而言之,边沿中断仅在边沿变化时触发,而电平中断在脉冲为低电平或高电平时触发。

因此,如果您设置了低级中断,只要引脚为低电平,MCU 就会继续执行 ISR。

也就是说,只要引脚为低电平,它就会一次又一次地离开并重新进入ISR。

我的印象是,没有人真正回答过电平触发和边缘触发的含义。我也没有。

D Krueger 的回答正确解释了电平触发和边沿触发的含义。(至少,即使我不熟悉 8085,他的回答对我来说也是正确的。) Golaz 和 vsz 的回答假设中断被屏蔽了。我仍然不确定如何“除了它仅在自上次识别以来一直处于低位时才被识别”。然而,与边缘触发不同。