Electrical Engineering Stack Exchange is a question and answer site for electronics and electrical engineering professionals, students, and enthusiasts. Join them; it only takes a minute:

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

I am studying 8085 microprocessor architecture and the word edge triggered and level triggered confusing me really very much. Can anyone explain me it in layman's words ?

While studying the interrupts of 8085 named RST 7.5, RST 6.5, RST 5.5 and TRAP i came across these words and they confused me. Here i have attached one document link from which i was reading and i have mentioned my confusion diagrams.

in the document RST 7.5 -> Edge triggered RST 5.5 -> Level triggered. TRAP -> Edge triggered and Level triggered. (why ? does it make any difference?).

the document link

share|improve this question
    
That's not a pdf. – starblue Nov 6 '11 at 11:55
    
yes, it is link to the pdf document. i have made correct changes. – ankurtr Nov 6 '11 at 12:08

I didn't read you document really, but I can understand why you are confused. But it is a very simple concept really. Let me explain.

Triggering: This means making a circuit active. Making a circuit active means allowing the circuit to take input and give output. Like for example supposed we have a flip-flop. When the circuit is not triggered, even if you give some input data, it will not change the data stored inside the flip-flop nor will it change the output Q or Q'. Now there are basically two types of triggering. The triggering is given in form of a clock pulse or gating signal. Depending upon the type of triggering mechanism used, the circuit will become active at specific states of the clock pulse.

  1. Level Triggering: In level triggering the circuit will become active when the gating or clock pulse is on a particular level. This level is decided by the designer. We can have a negative level triggering in which the circuit is active when the clock signal is low or a positive level triggering in which the circuit is active when the clock signal is high.

  2. Edge Triggering: In edge triggering the circuit becomes active at negative or positive edge of the clock signal. For example if the circuit is positive edge triggered, it will take input at exactly the time in which the clock signal goes from low to high. Similarly input is taken at exactly the time in which the clock signal goes from high to low in negative edge triggering. But keep in mind after the the input, it can be processed in all the time till the next input is taken.

That is the general description of the triggering mechanisms and those also apply to the 8085 interrupts.

share|improve this answer
    
well .. regarding edge triggering, usually you have to have the data stable for a short while for at least a specific amount of time before the edge (consult data sheets) and keep it stable for a certain length of time (consult data sheets) but these times are usually pretty short. – JustJeff Nov 7 '11 at 0:44
    
i understand what you wanted to explain but one another question that i have mentioned is in 8085 TRAP is both edge triggered and level triggered(see the document). So what is the functionality in such a case when circuit is both level sensitive and edge triggered. – ankurtr Nov 7 '11 at 6:54
    
In that case it wants the edge to also go past a certain level. So we need something like rising edge and level > 3V – Steven Goldade Dec 28 '12 at 17:22

On an 8085, TRAP is a non-maskable interrupt normally used to handle errors such as a power failure.

If it were level triggered, its code could never execute because it's an unmaskable interrupt. The handler would start executing when it became active, but it would still be active, so the handler would start executing, but it would still be active, so the handler would start executing, etc., etc. Therefore it has to be edge triggered.

However, edge triggering is a problem when the line may have glitches. Glitches may cause the handler to be invoked multiple time as the line glitches. It's a very big problem with TRAP since it is non-maskable and results in a RST.

As a compromise, the TRAP works as if it is level triggered, except that it is only recognized when it has been low since the last time it was recognized. That ensures that the TRAP handler is only invoked once.

This is what they mean by "edge triggered and level triggered".

share|improve this answer

*Triggering* means making a circuit active. In level triggering the circuit will become active when the gating or clock pulse is on a particular level. In edge triggering the circuit becomes active at negative or positive edge of the clock signal.

share|improve this answer
3  
This is pretty much what was said above. – Brian Carlton Oct 11 '12 at 19:54

Golaž and vsz state it well:

Its exactlly what is says.

If edge interrupt is set, the ISR will only get fired on falling/rising edge of a pulse. While if level sensitive interrupt (as you say) is set the ISR will get fired everytime there is a low-level/high-level signal on the corresponding pin.

In short, edge interrupt gets fired only on changing edges, while level interrupts gets fired as long as the pulse is low or high.

So if you have low-level interrupt set, MCU will keep executing the ISR as long as the pin is low.

That is, it will leave and re-enter the ISR again and again, as long as the pin is low.

My impression is that no one has really answered what it means to be both level- and edge- triggered. And I haven't, either.

D Krueger's answer correctly explains what it means to be both level- and edge- triggered. (At least, his answer sounds correct to me, even though I'm not familiar with the 8085.) Golaz and vsz's answer assumes that the interrupt is masked. I'm still not sure how "except that it is only recognized when it has been low since the last time it was recognized." differs from being edge-triggered, however.

share|improve this answer
    
Thank you for your answer, but I think OP moved on to something else and probably has a wife and kids since the question was asked and answered 5 years ago. Why don't you try to answer new questions instead ? – MaximGi Mar 8 at 14:18
1  
@MaximGi: I disagree. There is nothing wrong with answering old questions, forums are not only intended for posters but also for others who end up here when looking for answers to the same question on their own. The new answers simply need to add more information to the ones which already exist. – Mister Mystère Mar 8 at 14:39
1  
@MisterMystère I never said there was something wrong with answering old questions. But this late answer does not add any useful content, the question has already been answered properly. Also, the last statement is false, and against the rules. – MaximGi Mar 8 at 14:46
    
@MaximGi On closer examination, I see you are right: my last statement was false. I've corrected it. My quote from Golaz and vsz may be helpful to new users who are unfamiliar with what edge- or level-sensitive means on their own. – Josiah Yoder Mar 18 at 16:39

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.