In my schematic I have a display board which has two SPI interfaces, one for the display and one for touch sensing. Of course there are also two separate CS pins.
I want to use only one SPI interface from the controller. Therefore in the schematic D_MOSI ↔ T_DIN, D_SCK ↔ T_CLK and D_MISO ↔ T_DO are connected. This works. I tested it on a breadboard.
But ERC is reporting an error because D_MISO ↔ T_DO are connected:
It is correct that two outputs are connected in the schematic but because of the separate CS only one of them will be active.
Is it necessary to define D_MISO and T_DO as tristate outputs or is there a simpler way?
Remember, ERC is dumb, it only checks pin types on a net for compatibility statically. It doesn’t know the clash will not occur due to other factors. So use one of the solutions given.
In order for SPI to operate correctly, paralleled MISOs on slave devices should always be tristate electrically (controlled by the CS inputs). ERC is helping you here. And no, there is no “simpler way”, there is the correct way.