yes please explain
thanks in advance
Hope the following information will clear your doubt
Consider you have 2 microcontrollers and P1.0 of both micro controllers are tied together just as shown in the image. (Gave just for example)
Lets consider one of the microcontroller as master and another as slave.
Now if we wants to transmit a data from master then we need to configure the master to output port. But what is the point of having a master without a slave in listener mode? So we configure the slave to input mode.
Now the circuits behaviour will become as follows,
output port:
master section:
1. master flip flop gets a logic low as input (D pin)
2. Q_bar becomes high and the FET Q1 gets activated
3. Because the master side FET is activated, the VCC passes via R1, R2, Q1, R3 and D1 towards gnd.
4. Now your port pin (drain) voltage becomes zero.
slave section:
1. slave flip flop gets a logic high as input (D pin)
2. Q_bar becomes low and the FET gets deactivated
3. Now when the slave reads the port pin (drain) voltage, it reads zero
If the master sends 1, vcc searches the low resistance. But both FETs are now deactivated. Now if the slave reads the port pin, it reads the voltage as logic high.
When slave is in listening mode (input mode), the master is the master of the port pin. What the master decides is the output of the port pin.
Input port:
Now if you want to receive a data from slave then you need to configure the master to input port. And we configure the slave to output mode.
Now the circuits behaviour will become as follows,
master section:
1. master flip flop gets a logic high as input (D pin)
2. Q_bar becomes low and the FET gets deactivated
3. Because the master side FET is deactivated, the VCC searches the low resistance path.
slave section:
1. slave flip flop gets a logic low as input (D pin)
2. Q_bar becomes high and the FET gets activated
3. Now if the master reads the port pin (drain) voltage, it reads zero because the port pin's fate has been under the control of slave now.
Your question is why cant the master send the output when the master in configured as input. Actual answer is we can do it but you are violating the listener mode. Because When slave transmits, it will be in output mode (creates low resistance path) and if the master also transmits at that time, creates another low resistance path. So you will not get synchronised to receive the data from slave. If the slaves goes to listening mode, may be you can transmit but again you falls into one of the above condition.
Thanks
karthikkr