Skip to main content
Graduate
February 9, 2024
Solved

Using classical CAN with FDCAN controller on STM32H743VIT6

  • February 9, 2024
  • 1 reply
  • 3384 views

Hello. I have three question about using classical CAN frame with FDCAN controller.

I am using STM32H743VIT6 MCU on my PCB.

 

1. If system clock(label in ioc file: SYSCLK) is too low, can it make impossible to use CANbus?

2. If I using only classical CAN frame, does Nominal bit timing parameter(Nominal Sync Jump Width, Nominal Prescaler, Nominal Time Seg1/2) only consider and Data bit timing parameter ignored? or both bit timing parameter use for CAN 2.0 communication?

    2.1 I am using KVASER Bit Timing Calculator to set timing parameter. what is appropriate sample point value for STM32H743?

    2.2 There is Tseg1, Tseg2, SJW at KVASER Bit Timing Calculator for CAN FD. Does Tseg1 = Time Seg1, Tseg2 = Time Seg2 and SJW = Sync Jump Width?

 

3. If I using only classical CAN, may I use CAN transceiver which is not supporting FDCAN?

(I already make PCB and I use CAN transceiver which didn't supporting FDCAN...)

 

Thank you.

 

    This topic has been closed for replies.
    Best answer by mƎALLEm

    Hello,

    1. 1. If system clock(label in ioc file: SYSCLK) is too low, can it make impossible to use CANbus?

       Too low? how much? and why?

    2. If you are in Classical CAN config, Data timings are ignored.

      2.1 The sample point position depends on the bitrate:

      SofLit_1-1707486825476.png

       

      2.2 There is Tseg1, Tseg2, SJW at KVASER Bit Timing Calculator for CAN FD. Does Tseg1 = Time Seg1, Tseg2 = Time Seg2 and SJW = Sync Jump Width? --> Yes
    3. The choice of the transceiver depends on the bitrate you will reach independently from the usage of classical CAN or FDCAN. If you are using classical CAN you need a transceiver that can reach up to 1Mb/s (of course if you're reaching this bitrate).

    1 reply

    mƎALLEmAnswer
    Technical Moderator
    February 9, 2024

    Hello,

    1. 1. If system clock(label in ioc file: SYSCLK) is too low, can it make impossible to use CANbus?

       Too low? how much? and why?

    2. If you are in Classical CAN config, Data timings are ignored.

      2.1 The sample point position depends on the bitrate:

      SofLit_1-1707486825476.png

       

      2.2 There is Tseg1, Tseg2, SJW at KVASER Bit Timing Calculator for CAN FD. Does Tseg1 = Time Seg1, Tseg2 = Time Seg2 and SJW = Sync Jump Width? --> Yes
    3. The choice of the transceiver depends on the bitrate you will reach independently from the usage of classical CAN or FDCAN. If you are using classical CAN you need a transceiver that can reach up to 1Mb/s (of course if you're reaching this bitrate).
    LSHAuthor
    Graduate
    February 10, 2024

    Hello SofLit.

    Thank you for your reply!

     

    I am using 12MHz SYSCLK and 40MHz for FDCAN. Is it too low?

     

    I have to make it low as possible for low power consumption. (but I can't change MCU for low power.)

    Therefore, If there is clock under limitation for system clock frequency, please let me know the minimum system clock frequency for CAN communication.

    LSH_0-1707524234436.png

    LSH_1-1707524254149.png

     

    Thank you again.

    Technical Moderator
    February 13, 2024