0
\$\begingroup\$

I am working with CAN bus and have a microprocessor with builtin CAN controller (mpc5606B by NXP). I then came to know that I need a seperate transceiver for each CAN controller to establish communication. My question is 1.How a CAN controller and transceiver communicate with each other? 2. Is it possible to establish communication without a transceiver? Thank you

\$\endgroup\$
5
  • \$\begingroup\$ Take a look at this, I don't know jack about CAN bus, but I expected some funky voltage levels something along TTL/CMOS etc. en.wikipedia.org/wiki/CAN_bus#Physical it says for instance high speed can CANH 3.5V CANL 1.5V \$\endgroup\$
    – Sorenp
    Commented Jan 8, 2021 at 7:21
  • \$\begingroup\$ Btw if you don't even know how a CAN controller works and signed up for a MPC56 project, you kind of jumped in at the deep end of the pool before learning to swim. These MCUs are far from beginner-friendly and FlexCAN controllers are rather complex. \$\endgroup\$
    – Lundin
    Commented Jan 8, 2021 at 9:08
  • 1
    \$\begingroup\$ Maybe this question helps electronics.stackexchange.com/questions/30564/… \$\endgroup\$
    – EarthLord
    Commented Jan 8, 2021 at 9:12
  • \$\begingroup\$ Thank you so much everyone \$\endgroup\$ Commented Jan 8, 2021 at 16:03
  • \$\begingroup\$ @EarthLord thank u so much for link \$\endgroup\$ Commented Jan 8, 2021 at 16:09

2 Answers 2

1
\$\begingroup\$
  1. CAN transceivers are "dumb", you don't really commuicate with them but rather through them. The task of the CAN transceiver is to translate the Tx and Rx signals from the controller (logic voltage levels) into a differential signal consisting of CANHI and CANLO with +/- 2.5V levels.

    In this case, MPC56 are 3V3 so you will need a 3V3 tolerant transceiver. I would recommend to pick a modern one like MCP2562/MCP2562FD.

  2. No.

\$\endgroup\$
3
  • \$\begingroup\$ What kind of data comes out of the Rx and Tx pins of the CAN controller ? Is it the CAN message frames? After which it enters the transceivers? \$\endgroup\$ Commented Jan 8, 2021 at 16:13
  • \$\begingroup\$ @SundarKrishna That is a new question and should be posted as new question. And you can also download the microcontroller reference manual that explains how the CAN controller works, and you can download the CAN specifications, so asking to explain how CAN works shows no effort really. \$\endgroup\$
    – Justme
    Commented Jan 8, 2021 at 16:39
  • \$\begingroup\$ @SundarKrishna Sent data comes out of the Tx pin and enters through the Rx pin. Not just frames, but also ACK bits etc. These are the local signals of one specific node interacting with the bus. Whereas the data on the actual CANH/CANL signals is broadcasted to every node on the bus - who is the sender depends on the bus arbitration process. \$\endgroup\$
    – Lundin
    Commented Jan 11, 2021 at 7:39
1
\$\begingroup\$
  1. CAN controller talks with CAN PHY with TX and RX pins. Look up any CAN PHY tranceiver datasheet.

  2. Unless the MCU has a built-in CAN PHY, no it is not possible to connect to a CAN bus without a CAN PHY.

\$\endgroup\$
1
  • \$\begingroup\$ By CAN PHY u mean the transceiver? \$\endgroup\$ Commented Jan 8, 2021 at 16:15

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.