STM32 CAN FD ISO Nominal 500kpbs Data 1Mbps
Hello,
I am using STM32 microcontrollers on CAN FD ISO buses.
The problem is that I am not able to configure CAN FD bus with a nominal rate of 500kbps and a data rate of 1Mbps. All others configurations are working as expected, see below all combinations tested:
| Nominal rate (kbps) | Data Rate (kbps) | BRS |
| 500 | 500 | No |
| 500 | 1000 | Yes |
| 500 | 2000 | Yes |
| 500 | 4000 | Yes |
| 500 | 5000 | Yes |
| 500 | 8000 | Yes |
| 1000 | 1000 | No |
| 1000 | 2000 | Yes |
| 1000 | 4000 | Yes |
| 1000 | 5000 | Yes |
| 1000 | 8000 | Yes |
I tried the following issue on STM32G431KBU and STM32H723ZGI. CAN input clock is 80MHz, Sys Clk is 512MHz for H7 and peripheral clock is256MHz. On G4, Sys clock is 160MHz and peripheral clock is 160MHz. So on both microcontrollers CAN clock is lower than peripheral clock.
Bit timings for nominal rates are the following:
| Nominal bitrate | Prescaler | SJW | Tseg1 | Tseg2 | Tq per bit | Theoretical bitrate (kpbs) |
| 500 | 16 | 2 | 7 | 2 | 10 | 500 |
| 1000 | 8 | 2 | 7 | 2 | 10 | 1000 |
| Data rates | Prescaler | SJW | Tseg1 | Tseg2 | Tq per bit | Theoretical bitrate (kpbs) |
| 500 | 16 | 4 | 7 | 2 | 10 | 500 |
| 1000 | 8 | 2 | 7 | 2 | 10 | 1000 |
| 2000 | 4 | 4 | 7 | 2 | 10 | 2000 |
Any help would be appreciated,
Best regards
