In the S32K146, will the RJW configuration of FLEXCAN have any impact compared to PSEG2?
Hi@SaLan
This was my mistake; I thought there was an error message indicating an RJW setting error.
Senlent_0-1781751975557.png
RJW represents the extended time of the PESG1 segment and the shortened time of the PSEG2 segment during resynchronization. The shortening of the PSEG2 segment means that the sampling point will be shifted backward, and if it is too large, it will lead to sampling errors.
So CAN Bit Timing Requirements, it says that the re-synchronisation jump width cannot exceed 4 Time Quanta and it also must not exceed the number of Time Quanta in the PHASE_SEG1 segment.
SaLan_0-1781746341737.png
As shown in the figure, I set the RJW to 3 and made it larger than PSEG2, but I didn't get any “infeasible” warnings.
If possible, could you tell me what the implications are of configuring the registers this way?
Hi@SaLan
When you configure FlexCan using S32 DS, it will explicitly tell you that it is not possible.
According to the CAN protocol, SJW ≤ PSEG2 ≤ PSEG1, and SJW ≤ 4 Tq.
If SJW is configured to be greater than PSEG2 in the FLAXCAN register, will this have any impact?
Hi@SaLan
For S32K146 FlexCAN, PSEG2 affects the nominal bit time and sample point, while RJW only limits resynchronization adjustment and is not part of the nominal bitrate calculation.