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

How to get data out of an interrupt?

Hi,

I would like to retrieve some value from my external interrupt handler. The external interrupt handler goes through different states and I would like to evaluate some value inside the interupt handler from outside the interrupt handler and also from another sourcefile/module.

I use (in the interrupt module):
volatile unsigned char myByte;

I use (in the evaluating module):
extern volatile unsigned char myByte;

In the module during evaluating of 'myByte' I disable the external interrupt.

But I still do not get the correct value.

Where do I go wrong?

Henk

Parents
  • typedef unsigned char  data_type;   // assign as required
    

    Not So fast.

    If the global is a char or bit your code is OK. But if is an int or larger it will not be atomic for an 8052. The main() functions would have to disable interrupts or take other action to insure proper operation.

Reply
  • typedef unsigned char  data_type;   // assign as required
    

    Not So fast.

    If the global is a char or bit your code is OK. But if is an int or larger it will not be atomic for an 8052. The main() functions would have to disable interrupts or take other action to insure proper operation.

Children