I'm working on a small custom PCB that uses the TI SN65VHD230 CAN Transceiver and the square waveforms of the CAN bus aren't as clean and crisp as it seems they should be.
I have a 10 μF MLCC on the VCC of the transceiver (0.1 μF passed lots of high frequency noise so I grabbed something I had on hand, 10 μF, and it helped), a 4.7 kΩ pull up resistor on the RX pin as suggested in the data sheet, as well as a 10 kΩ resistor to ground for helping with noise on the RS pin to help with noise. But I still can't seem to get the edges to be clean and the states to be stable.
Power is delivered to the transceiver from an internal MCU Vreg that takes it from 5 V down to 3.3 V. The MCU is fed 5 V from an LDO which is fed with 12 V. I did notice that I'm getting about 450 mV of ripple on the 12 V line that seems to be coming from the LDO. I'm not sure if that's affecting the CAN bus issue at all.. I wouldn't think so being that it's going through so many stages of voltage regulation but... maybe someone knows better than me.
DIFF(C1,C2)
. Then you'll notice that the rounded edges of the recessive bits aren't that great of a problem. \$\endgroup\$