Content originally posted in LPCWare by gnxp on Tue Sep 16 08:08:58 MST 2014
Environment -
LPC1769, Keil uV4, lpc open 2.10, lpc xpresso 1769 board on a custom baseboard
I am trying to get CAN (at 500kbps) work reliably with the above setup. I am able to send and receive data. I have CANusb analyser attached to the network to monitor CAN data sent from board and in the debugger I can see CAN data received by lpc1769(received data is correct). The issue is I see lot of ERR frames. The setup runs for quite a while and then goes bus off and doesn't recover. It goes bus off quicker if it is also transmitting CAN frames. Now if I am only receiving frames and I add CANusb analyser in active mode(ACK done) and/or a different CAN device I don't see any ERR frames(so the other devices ACK correctly). So it is easy to conclude the ERR is on lpc1769 side. I understand all this points to a bus HW err, but I have checked soldering joints, termination resistors etc. Next thing I would be trying is try catch CAN behaviour on scope just before err frame. I wanted to ask here if there are any gotchas I might have missed using the lpc open CAN driver. I have verified the bitrate setup which is correct. lpc1769 running at 96Mhz, CAN pclk at 24 Mhz (so BRP -1 TSEG-15 TSEG2-6 giving me 500kbps)
Any suggestions welcome.