Hi Olivier POHU,
Please accept my apologies for the late reply, because recently, I am a little overloaded, now, I reply you in details after the test.
1. LPCXpress 1549 CAN_TX have no signal after run the periph_ccan_rom
This problem is caused by no CAN transceiver in the hardware, the CAN_TX pin need to associate with the CAN transceiver, then we can get the CAN transmit data.
2. My test result details.
Board: LPCXpress LPC1549
Code: lpcopen_2_20_lpcxpresso_nxp_lpcxpresso_1549\periph_ccan_rom
CAN transceiver: I connect a external CAN transceiver, the circuit is like follows:

I connect the LPCXpresso LPC1549 CAN_TX to C_TXD, CAN_RX to C_RXD. CANH and CANL connect to my CAN analyzer(PEAK CAN).
Test tool:
CAN analyzer: PEAK CAN
Oscilloscope, test the CAN_TX, CAN_H and CAN_L wave.
Wave:
1) CAN_TX, CAN_H, CAN_L oscilloscope wave
Channel 1: CAN_TX ; Channel 2: CAN_H; Channel 3: CAN_L

Zoom in it.

You can find the bit rate is 500Kps, just as the code defined.
2) CAN analyzer data

After the board reset, you can find the CAN analyzer can receive the standard ID 0x345, data is 0x54 0x45, 0x53, 0x54, just as the transmit code:
/* Send a simple one time CAN message */
msg_obj.msgobj = 0;
msg_obj.mode_id = 0x345;
msg_obj.mask = 0x0;
msg_obj.dlc = 4 ;
msg_obj.data[0] = 'T'; /* 0x54 */
msg_obj.data[1] = 'E'; /* 0x45 */
msg_obj.data[2] = 'S'; /* 0x53 */
msg_obj.data[3] = 'T'; /* 0x54 */
Then, use the CAN analyzer send the CAN data, standard ID: 0X400, data is 0X00, 0X01,0X02,0X03,0X04,0X05,0X06,0X07.From the code:
static void CAN_rx(uint8_t msgNumber)
{
/* Determine which CAN message has been received */
msg_obj.msgobj = msgNumber;
/* Now load up the msg_obj structure with the CAN message */
LPC_CAND_API->hwCAN_MsgReceive(pCanHandle, &msg_obj);
if (msgNumber == 1) {
/* Simply transmit CAN frame (echo) with with ID +0x100 via buffer 2 */
msg_obj.msgobj = 2;
msg_obj.mode_id += 0x100;
LPC_CAND_API->hwCAN_MsgTransmit(pCanHandle, &msg_obj);
}
}
We can find after the LPC1549 receive the CAN data, it will add 0x100 to the received ID, then send the data back the CAN bus.

Look the above pictures, you can find the CAN analyzer received the 0X500 standard ID, it is 0X400+0X100, it is correct.
All the above data and waves meas the lpcopen can code works, both the send and receive.
So, I think you problem may be caused by your CAN transceiver hardware, if the CAN transceiver hardware have problem, you won't get the correct data or test the correct wave.
You can refer to may CAN transceiver circuit to try it.
Wish it helps you!
If you still have question about it, please let me know!
Have a great day,
Kerry
-----------------------------------------------------------------------------------------------------------------------
Note: If this post answers your question, please click the Correct Answer button. Thank you!
----------------------------------------------------------------------------------------------------------------------