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 can I change SFR (bit) address definition when program is running?

In my application, I want to easily change address of SFR include user's commands. Such as:

sbit ram_en=P1^0;
......
/*In another place, I want to change ram_en to P1^2 dynamiclly.*/

I am try to do this(not definition field) in my code:
...
sbit ram_en=P1^2;
....

But it can not pass when compiling.
So, how can I implement this function?

Best regards!

Parents
  • "Sorry, that's my mistake, it should be 'processor'..."

    Hmmm... "C51 structure processor" still doesn't mean anything. What do you mean?

    "Thus it does not need re-compile code. This can give user more flexibility and more convenience."

    Well, yes - more flexibility and more convenience, but fundamentally impossible on an 8051!

    I think you would be misleading your students by suggesting that they can do this without having to recompile.

    Anyhow, how long does it take to recompile such student projects?

Reply
  • "Sorry, that's my mistake, it should be 'processor'..."

    Hmmm... "C51 structure processor" still doesn't mean anything. What do you mean?

    "Thus it does not need re-compile code. This can give user more flexibility and more convenience."

    Well, yes - more flexibility and more convenience, but fundamentally impossible on an 8051!

    I think you would be misleading your students by suggesting that they can do this without having to recompile.

    Anyhow, how long does it take to recompile such student projects?

Children