Currently I am using a 32bit micrcontroller with embedded CAN controller. I am confused to select the clock source for CAN controller (based on 2.0 version Part A & B), as I have 3 options for clock source, Cascaded FMPLL clock, External Crystal Oscillator and on-chip RC oscillator. As I have to minimized error due to Clock jitter in CAN bit timing calculation. So I have to choose best clock source for this requirement. I try to search what is method to follow for this selection but could not find detailed information. Could anyone explain this to me or recommend me some good source of information? Thanks
Asked
Active
Viewed 837 times
0
-
CAN is very sensitive to clock skew. Avoid any non-crystal based clock. Certainly, I would avoid any on-chip RC oscillators as these are normally way off from the target frequency, and not stable enough during operation. If the FMPLL clock is based on the internal RC oscillator, avoid that also. If, on the other hand, it is based on an external crystal, no problem. And, obviously, external crystal oscillator is OK. – tonypdmtr Oct 23 '16 at 17:30
1 Answers
0
It depends on the bitrate, but if you have a crystal, use that.
CAN creates an edge every 5 bit times. If you add up the amount of clock 'drift' you'll get over that time between the potentially worst-slowest clock on the network and the potentially worst-fastest clock on the network, and compare that to the sampling point within the bit that you are using, you will be able to see if the amount of drift you have will be too much.

Martin Thompson
- 16,395
- 1
- 38
- 56