I want to connect an LPC to the CAN bus in my car, and I found that LPC2129 have the CAN protocol implemented on the chip. Searching the Internet, I saw that most of microcontrollers are connected to the bus via MCP2515 and MCP2551. Because this LPC already has a CAN controller I don't need MCP2515. But do I still need MCP2551 or similar transceiver chip?
Yes, you still need to use a CAN Transceiver (Converting Bus voltages to logic for your processor). But you can better use the NXP TJA1051T/3 as you have a seperate Vio so you can directly interface with your 3.3V CAN controller in your LPC. So you don't have to convert the 3.3V of your LPC to 5vV for the MCP2551.
The ODB2 connecter in your car is in an correctly terminated CAN bus so you should not put extra termination in your device as it can create bus errors (low or high) and eventually a bus off!
Also CAN is differential 2.5 volt dominant bit 3.5V and recessive bit 1.5V on CAN high (CAN low is the opposite).