How can I calculate the bit rate for the CAN module (eCAN)? I see conflicting information. I need some clarity.
TMS320x2803x Piccolo Enhanced Controller Area Network (eCAN) Reference Guide
Find, "CAN Bit Rate Calculation"
Fist off, I do not believe that SYSCLKOUT is the CAN module system clock frequency as stated below the equation. What I believe to be true is SYSCLKOUT/2 is the CAN module system clock frequency. I think the reference guide is off by a factor of two here.
Suppose I follow the equation for the bit rate using the equation in this section with the following inputs:
Clock source OSCCLK 10 MHz
PLL multiplier PLLCR[DIV] 1
PLL divider PLLSTS[DIVSEL 1
SYSCLKOUT 10 MHz
BRPreg 5
TSEG1reg 6
TSEG2reg 1
Then it follows that these would be my results with the CAN module bit rate being the final result:
Bit Time (BT) 10
TSEG1 7
TSEG2 2
CAN Module Clock 5 MHz
BRP 6
CAN Bit Rate 83.3 kbps
I get different results when I compare my results to those in the table below this heading, "BRP Field for Bit Rates (BT = 10, TSEG1reg = 6, TSEG2reg = 1, Sampling Point = 80%)." That table quotes a CAN bus speed of 500 kbps. Is CAN bus speed the same thing as bit rate? The units match. Why do my results from the given equation differ so greatly from the quoted table?
This seems wrong. “SYSCLKOUT is the CAN module system clock frequency, which is the same as the CPU clock frequency.”
Reference:
TMS320x2803x Piccolo Enhanced Controller Area Network (CAN) Reference Guide