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

Question about sbit definitions

Hi,

I am using the Keil uVision 2 software to develop a firmware driver. I have one technical related to the sbit definitions.

Lets say i have couple of sbit definitions as follows:

sbit JTAG_TDO = 0xB0+0;
sbit ALT_JTAG_TDO = 0x80+0;

In the course of program execution, based on some condition I want JTAG_TDO point to the ALT_JTAG_TDO pin so that whatever i write to JTAG_TDO gets written to ALT_JTAG_TDO at the port address 0x80+0 instead of the original 0xB0+0.

I tried doing &JTAG_TDO = &ALT_JTAG_TDO and that raised a compiled error.

Please let me know how to dynamically change the port pin addressing?

Parents
  • Ok, I achieved what i wanted by passing the pins as parameters to the same function based on an IF condition.

    Example:
    Pulse_TCK(bit sbJTAG_TCK); //Definition

    I am calling the above function as follows:

    if (old_board)
    {
    Pulse_TCK(JTAG_TDO);
    }
    else
    {
    Pulse_TCK(ALT_JTAG_TDO);
    }

    Thanks for all your inputs.

Reply
  • Ok, I achieved what i wanted by passing the pins as parameters to the same function based on an IF condition.

    Example:
    Pulse_TCK(bit sbJTAG_TCK); //Definition

    I am calling the above function as follows:

    if (old_board)
    {
    Pulse_TCK(JTAG_TDO);
    }
    else
    {
    Pulse_TCK(ALT_JTAG_TDO);
    }

    Thanks for all your inputs.

Children