This discussion has been locked.
You can no longer post new replies to this discussion. If you have a question you can start a new discussion

XE167 question

Hi gentlemen
Consider i'm an absolute beginner with XE167 and microV4 too, so be patient with my stupid question.
I've enclosed a couple of uninterruptible instructions between _Atomic_(0) _endatomic_,
but wath happens to an hardware interrupt occuring at that time?
Is it neglected or simply delayed?
Thank's in advance
Alf

Parents
  • From the Manual...

    The atomic and extend instructions (ATOMIC, EXTR, EXTP, EXTS, EXTPR, EXTSR) disable the standard and PEC interrupts and class A traps until completion of the immediately following sequence of instructions.

    ATOMIC and EXTended instructions become active immediately, so no additional NOPs are required. All instructions requiring multi cycles or hold states for execution are considered to be one instruction. The ATOMIC and EXTended instructions can be used with any instruction type.

    Note: If a class B trap interrupt occurs during an ATOMIC or EXTended sequence, then the sequence is terminated, an interrupt lock is removed, and the standard condition is restored before the trap routine is executed. The remaining instructions of the terminated sequence executed after returning from the trap routine will run under standard conditions.

    Note: Certain precautions are required when using nested ATOMIC and EXTended instructions. There is only one counter to control the length of the sequence, i.e. issuing an ATOMIC or EXTended instruction within a sequence will reload the counter with the value of the new instruction.

Reply
  • From the Manual...

    The atomic and extend instructions (ATOMIC, EXTR, EXTP, EXTS, EXTPR, EXTSR) disable the standard and PEC interrupts and class A traps until completion of the immediately following sequence of instructions.

    ATOMIC and EXTended instructions become active immediately, so no additional NOPs are required. All instructions requiring multi cycles or hold states for execution are considered to be one instruction. The ATOMIC and EXTended instructions can be used with any instruction type.

    Note: If a class B trap interrupt occurs during an ATOMIC or EXTended sequence, then the sequence is terminated, an interrupt lock is removed, and the standard condition is restored before the trap routine is executed. The remaining instructions of the terminated sequence executed after returning from the trap routine will run under standard conditions.

    Note: Certain precautions are required when using nested ATOMIC and EXTended instructions. There is only one counter to control the length of the sequence, i.e. issuing an ATOMIC or EXTended instruction within a sequence will reload the counter with the value of the new instruction.

Children