Email: Password: Remember Me | Create Account (Free)

Back to Subject List

Old thread has been locked -- no new posts accepted in this thread
???
10/05/07 11:09
Read: times


 
#145456 - I tested changing prio level from the IT, it works
Hi,

Just to tell you that changing the priority of an ISR from inside the same ISR works on a AT89C51 derivative. I made lots of tests to be sure.

My code:
The IT0 is edge activated. The external system is very fast so it happens that new edge is observed while the previous is still being serviced. The IT0 ISR must allow servicing the first new edge and don't allow servicing the second and farther (it's an overrun which is detected latter).

ITs have 4 levels, 3 is the highest.

What I did:
The IT0 is defined level 2.
When it's entered it changes its own level to 3. So the next IT0 is allowed to interrupt the current one. At any exit from ISR the level is put back to 2. Consequent IT0 can not be services before the first is finished.

Alexis

List of 13 messages in thread
TopicAuthorDate
I tested changing prio level from the IT, it works            01/01/70 00:00      
   you MUST be wrong            01/01/70 00:00      
      For Erik            01/01/70 00:00      
   redefine test            01/01/70 00:00      
      what??? and comments            01/01/70 00:00      
         what            01/01/70 00:00      
            IT in derivatives            01/01/70 00:00      
   Stored edges            01/01/70 00:00      
      I'm still certain            01/01/70 00:00      
         I don't see well what you mean.            01/01/70 00:00      
         how about an answer            01/01/70 00:00      
            you are right            01/01/70 00:00      
               just read \"the bible\"            01/01/70 00:00      

Back to Subject List