How do nodes in a clock extension peripheral interface (CXPI) network detect data collision?
In normal state, each node always compares the bit received from the CXPI bus with the bit transmitted to the CXPI bus. When the values of the transmitted and received bits match, the node may continuously transmit to the CXPI bus. A mismatch in the values causes the node to detect loss of arbitration so the transmission of the bit after that bit is discontinued.
If the transmitting node detects loss of arbitration, it behaves as the receiving node because the transceiver stops data transmission from the next bit to the stop bit. When two or more nodes begin transmitting at the same time, only the node that transmits the highest priority frame can complete the transmission by arbitration.
The MCU always compares transmitted data (TXD) with the received data (RXD). If a data difference is detected, the MCU stops data transmission until finding the interframe space (IFS).