Forums

LPC2000 CAN project

Started by gossamer September 10, 2015
Greetings!

I have just join this group as it might be a good place to have some chat
about NXP projects. 
I want to make OBD2 scanner using one of the LPC chips. Now, I dont have
any experience with CAN protocol, but I read about it and kind of
understand how it works. What is not clear is if filtering of the messages
is done by MCU or CAN controller ?
I found most of implementations is around MCP2515 CAN controller and
MCP2551 transceiver. 
I dont really know if theres a benefit of using LPC CAN controller over
MCP2515, or just stick with any LPC and use the SPI for that? As MCP have
2 or 3 I/O buffers, is that enough for fast communication ? 
What I want to achieve is to read some of the sensors from the car CAN and
show it on a small TFT display. 
Suggestions? Should I use LPC with CAN or stick with MCP ? Implications
are that i need to make new PCB for LPC with CAN, and for MCP i can just
order a board and connect it to SPI.



---------------------------------------
Posted through http://www.EmbeddedRelated.com
"gossamer" wrote:

>I want to make OBD2 scanner using one of the LPC chips.
...
>Suggestions? Should I use LPC with CAN or stick with MCP ? Implications >are that i need to make new PCB for LPC with CAN, and for MCP i can just >order a board and connect it to SPI.
The LPC11C24 has a built-in CAN controller and CAN bus drivers. Embedded Artists had a demo board with this chip, may be others. R.W.
gossamer wrote:
> Greetings! > > I have just join this group as it might be a good place to have some chat > about NXP projects. > I want to make OBD2 scanner using one of the LPC chips. Now, I dont have > any experience with CAN protocol, but I read about it and kind of > understand how it works.
It may be worth getting a Komodo USB CAN interface and using that a bit to learn. They have a library that allows programming against the device, or you can just use their GUI for capture. I have one connected to a Cubie board in this way. I'm sure a RasPi or Beaglebone Black would work as well, or you can just connect it to a Windows or Linux workstation/laptop/what have you.
> What is not clear is if filtering of the messages > is done by MCU or CAN controller ?
Figure 4.2 on page 25 here: http://ww1.microchip.com/downloads/en/DeviceDoc/21801G.pdf has some detail.
> I found most of implementations is around MCP2515 CAN controller and > MCP2551 transceiver. > I dont really know if theres a benefit of using LPC CAN controller over > MCP2515, or just stick with any LPC and use the SPI for that? As MCP have > 2 or 3 I/O buffers, is that enough for fast communication ? > What I want to achieve is to read some of the sensors from the car CAN and > show it on a small TFT display. > Suggestions? Should I use LPC with CAN or stick with MCP ? Implications > are that i need to make new PCB for LPC with CAN, and for MCP i can just > order a board and connect it to SPI. > > > > --------------------------------------- > Posted through http://www.EmbeddedRelated.com >
-- Les Cargill
On Thursday, September 10, 2015 at 2:03:37 PM UTC-4, Roberto Waltman wrote:
> "gossamer" wrote: > > >I want to make OBD2 scanner using one of the LPC chips. > ... > >Suggestions? Should I use LPC with CAN or stick with MCP ? Implications > >are that i need to make new PCB for LPC with CAN, and for MCP i can just > >order a board and connect it to SPI. > > The LPC11C24 has a built-in CAN controller and CAN bus drivers. > Embedded Artists had a demo board with this chip, may be others. > > R.W.
To echo what Roberto said: LPC11Cxx has an excellent CAN interface with built-in drivers (drivers in ROM) - quite easy to use. You'll want to get yourself a CAN book and study; CAN is quite different from other communication schemes. IAR also makes an LPC11 starter/devel board which I used to get up to speed, before I designed a couple boards using LPC11C22. Provided free CodeRed studio (now owned by NXP) was quite good as well. Hope that helps! Best Regards, Dave
Roberto Waltman wrote:

> "gossamer" wrote: > >>I want to make OBD2 scanner using one of the LPC chips. > ... >>Suggestions? Should I use LPC with CAN or stick with MCP ? Implications >>are that i need to make new PCB for LPC with CAN, and for MCP i can just >>order a board and connect it to SPI. > > The LPC11C24 has a built-in CAN controller and CAN bus drivers. > Embedded Artists had a demo board with this chip, may be others. > > R.W.
using a CAN module internally connected to the controllers peripheral bus is always a better solution compared with a CAN controller connected via SPI. Hundreds of controllers with integrated CAN are available by different manufacturers: http://www.can-wiki.info/doku.php?id=controllers:main You should take care to have a migration path to CAN-FD. Heinz
Heinz-J�rgen Oertel wrote:

>Roberto Waltman wrote:
...
>> The LPC11C24 has a built-in CAN controller and CAN bus drivers. >> Embedded Artists had a demo board with this chip, may be others. > > >Hundreds of controllers with integrated CAN are available by different >manufacturers: >http://www.can-wiki.info/doku.php?id=controllers:main
Correct, but most do not have bus drivers. (Electrical buffers, not software.) R.W.
Roberto Waltman wrote:

> Heinz-J�rgen Oertel wrote: > >>Roberto Waltman wrote: > ... >>> The LPC11C24 has a built-in CAN controller and CAN bus drivers. >>> Embedded Artists had a demo board with this chip, may be others. >> >> >>Hundreds of controllers with integrated CAN are available by different >>manufacturers: >>http://www.can-wiki.info/doku.php?id=controllers:main > > Correct, but most do not have bus drivers. (Electrical buffers, not > software.) > > R.W.
You are correct. The LPC11C22 and LPC11C24 parts include an on-chip, high- speed CAN transceiver. I assume it is a dual die implementation. Heinz