This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

28069can通信

请问可否将两块DSP的CANR和CANT引脚直接相连接来测试Can通信收发功能?

  • 您好,

    不可以这样操作,需要使用can Transceiver,在以下手册中section 3.2 有详细说明 :

    http://www.ti.com/lit/an/spra876b/spra876b.pdf

    3.2 Why a Transceiver is Needed
    One cannot directly connect CANTX of node-A to CANRX of node-B and vice versa and expect successful
    CAN communication. In this case, CAN is unlike other serial interfaces like SCI or SPI. For example, SCI
    can be made to work with a RS232 transceiver or through a direct connection (SCITX of one node to
    SCIRX of another node and vice versa). However, CAN bus needs a CAN transceiver for the following
    reason: In addition to converting the single-ended CAN signal for differential transmission, the transceiver
    also loops back the CANTX pin to the CANRX pin of a node. This is because a CAN node needs to be
    able to monitor its own transmission. Why?
    • This has to do with the ACK requirement mandated by the CAN protocol. When a node transmits a
    frame on the CAN bus, it expects an ACK from at least one other node on the network. For the ACK
    phase, the transmitter puts out a 1 and expects to read back a 0.
    • During arbitration, a node with a higher-priority MSGID needs to be able to override a 1 with a 0. Here
    again, the transmitter needs to be able to read back the transmitted data. When a node puts out a 1
    and reads back a 0 during the arbitration phase, it loses arbitration.