Assigning different names for r / w to a port

I program an 8051 controller which is embedded in an ASIC. Several functions of the ASIC can be controlled by writing to the 8501's ports, but reading the same ports leads to different functions of the ASIC.
E.g. writing to P0 controls an oscillator whereas i get a temperature value by reading P0.

Is there a proper way to assign two names to a port for either read - or write access and is there a possiblity to prevent programmers from accessing those the wrong way?

Thanks for your help! Tobias

Parents
  • I'd go a step higher up and create functions like

    OscillatorControl ();

    TemperatureGet ();

    The implementation of these routines can do the right thing at the right addresses, and higher level code doesn't even need to know how the temperature is actually obtained or the oscillator is controlled.

Reply
  • I'd go a step higher up and create functions like

    OscillatorControl ();

    TemperatureGet ();

    The implementation of these routines can do the right thing at the right addresses, and higher level code doesn't even need to know how the temperature is actually obtained or the oscillator is controlled.

Children
More questions in this forum