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

Problem with global variable

Hi

I write a C program in uvision3. I have a global vriable "byte xdata *MemoryArea = (byte *)0x8000" and I define it in "flashdata.c". I have a function that use "MemoryArea". This function define in "mmngr.c". In this function there is a local variable "byte * tmp" and tmp = MemoryArea;
When I run this program tmp get value "X:0x0c84" ???
why??? I want tmp get value "X:0x8000". Whatis problem?

When "byte xdata *MemoryArea = (byte *)0x8000" is define in "mmngr.c" all thing is true and tmp get value "X:0x8000".

My Microcontroller is "Sle66c360pe"

Parents
  • This is a discussion forum - it is not a consultancy service!

    Do you really expect to receive free consultancy in under 2 hours?!

    But yes, your post is hard to follow.

    Why don't you just post the smallest complete code sample that illustrates your problem?

    Be sure to follow the instructions for posting code:
    http://www.keil.com/forum/tips.asp

    Be sure that your code compiles without errors or warning.

    Explain what you expect the code to do, and what actually happens, and what steps you have taken to explain the difference.

    eg, have you tried it in the simulator?

Reply
  • This is a discussion forum - it is not a consultancy service!

    Do you really expect to receive free consultancy in under 2 hours?!

    But yes, your post is hard to follow.

    Why don't you just post the smallest complete code sample that illustrates your problem?

    Be sure to follow the instructions for posting code:
    http://www.keil.com/forum/tips.asp

    Be sure that your code compiles without errors or warning.

    Explain what you expect the code to do, and what actually happens, and what steps you have taken to explain the difference.

    eg, have you tried it in the simulator?

Children
No data