XMC4800

From Humanoid Robots Wiki
Jump to: navigation, search

For controlling multiple CAN buses, our solution is to use the Infineon XMC4800, a MCU that integrates a M4 core and has both an EtherCAT node and 6x CAN nodes. This allows us to control the CAN buses through either FS USB or (in the future) EtherCAT.

Most technical implementation details are in the Reference Manual

Testing the Evaluation Board[edit]

XMC4800 Breadboard.png

The testing setup is connected as the image describes. The eval board has one built-in CAN transceiver (while the rest of them are using external SN65HVD230 modules). The one built-in transceiver is connected to the other four CAN buses as a debug RX path. This should be disconnected for testing otherwise since the built in bus is only meant to do basic loopback-style testing

Programming the MCU[edit]

Follow the instructions here for an example on how to program the XMC4800 chip. The main takeaway is

  1. You need the J-SEGGER driver for your computer
  2. Connect via the DEBUG micro-B port, not the other USB port
  3. Use ModusToolBox to get started with the code examples

CAN example code[edit]

@Tom + @Ved(?) TODO

Integrated XMC4800 CAN board[edit]

TBD