The PC sends a command out to the first PIC. The PIC checks if this command is meant for it. If not, it passes it on to the next PIC in line.
The PC serial port is connected to a 2 line bus. Any PIC on this bus reads the PC Tx line but keeps the PC Rx line floating. The PC sends out a command on this bus. All PICs receive it but only the PIC with the correct address responds to the command. If the command is a poll command, that PIC drives the PC Rx line, sends data back to the host and goes back to the floating state after transmission.
Bus Daisy Chain ------------------------------ ------------------------------- Pro Only 2 I/O lines used Con 4 I/O lines used Pro Handle 1 serial port Con Handle 2 serial ports Con Pre-assigned addresses Pro Dynamic address setting Pro In high traffic, active Con In high traffic, all units lose data units downstream lose data Pro No transmission delay Con 1 char delay per unit Con Polled Input Pro Vectored input Pro Bus simpler to wire Con Chain harder to wire Pro One bad unit may just Con One bad unit will cut leave the bus alone off all units downstream Con With large no. of units Pro Time and traffic kept lot of time and bandwidth to minimum is spent pollingThe polling approach was adopted. The simpler wiring can allow controllers to be scattered around the layout. Adding and removing controllers will not disturb the wiring. I/O pins on a PIC are a scarce resource and the bus uses only 2 instead of 4 I/O pins. The system will be a little less responsive to controllers sending information back to the host but output functions seem to predominate in a layout. Most controllers don't have much to say.