Need example to get CAN running

I have problems to get the CAN controller on my Infineon XC886 CM running. Have someone example code for sending a CAN message via CAN node 0 (CAN RXD Port 1_6, CAN TXD Port 1_7)? I have tryed to use Dave-generated code with the following code in my main-function:

un_32bit canTestObject;

canTestObject.ubDB[0] = 0x77;
canTestObject.ubDB[1] = 0x76;
canTestObject.ubDB[2] = 0x75;
canTestObject.ubDB[3] = 0x74;

CAN_vLoadData(0x00, &canTestObject.ulVal);
CAN_vSetMSGVAL(0x00);
CAN_vTransmit(0x00);

But it only works in the software-simulator (in der Peripherals->MultiCAN->CAN Communication 0 window the sended messages appear) but not on my self-made board (nothing to see with oscilliscope on the MCU-Pins 1_6 and 1_7).

Parents
  • "But it only works in the software-simulator"

    So why do you think another example will help?

    If it works in the simulator, then the logic must be basically correct - the problem must be down to some hardware-dependency; eg,

    * The hardware design is flawed;
    * The hardware design is good, but you've built it wrong;
    * The hardware design is good, you've built it right, but some component(s) is/are faulty;
    * The hardware's all good, but your software is not correctly configured for it;
    * The hardware's all good, but your software has some timing issue or other hardware dependency/interaction that doesn't show up in simulation;
    etc, etc,...

    You need to locate the problem first!

Reply
  • "But it only works in the software-simulator"

    So why do you think another example will help?

    If it works in the simulator, then the logic must be basically correct - the problem must be down to some hardware-dependency; eg,

    * The hardware design is flawed;
    * The hardware design is good, but you've built it wrong;
    * The hardware design is good, you've built it right, but some component(s) is/are faulty;
    * The hardware's all good, but your software is not correctly configured for it;
    * The hardware's all good, but your software has some timing issue or other hardware dependency/interaction that doesn't show up in simulation;
    etc, etc,...

    You need to locate the problem first!

Children
More questions in this forum