Questions about CAN RX signal reception failure

cancel
Showing results for 
Search instead for 
Did you mean: 

Questions about CAN RX signal reception failure

Jump to solution
420 Views
jm_shin
Contributor I

hello

I used CANoe to transmit the CAN signal to the EVB board.
However, CAN signal was not received in EVB.
The example code I used is can_pal_s32k144 of 'S32K1xx RTM SDK v3.0.0 Example Project'
And the sample code was tested by flashing without modification.
CANoe carries the CAN signal but the status does not change in the FLEXCAN_DRV_GetTransferStatus function.
How do I receive the RX signal from the EVB board?
How can I check whether CAN signal is received from EVB board?

Thanks

0 Kudos
1 Solution
154 Views
alexandrunan
NXP Employee
NXP Employee

By default the example came configured as MASTER.

/* Use this define to specify if the application runs as master or slave */
#define MASTER
/* #define SLAVE */

/* Definition of the TX and RX message buffers depending on the bus role */
#if defined(MASTER)
#define TX_MAILBOX (1UL)
#define TX_MSG_ID (1UL)
#define RX_MAILBOX (0UL)
#define RX_MSG_ID (2UL)
#elif defined(SLAVE)
#define TX_MAILBOX (0UL)
#define TX_MSG_ID (2UL)
#define RX_MAILBOX (1UL)
#define RX_MSG_ID (1UL)
#endif

If you used the default configuration then the expected frame should be CAN_FD with ID 2 and payload 1 byte with data[0] as 0 or 1.

To check if you receive something pres one of the buttons and you should receive an FD frame with ID 1.

View solution in original post

0 Kudos
3 Replies
154 Views
alexandrunan
NXP Employee
NXP Employee

Hello,

The CAN works through a SBC transceiver, in order to activate SBC, you need to power externally the EVB board with 12V on J16.

The signals can be received on J13.1 CAN_Hi and J13.2 CAN_Lo.

The example uses CAN FD frame type with Arbitration Phase 500kbps and Data Phase 1000Kbps.

And depends how you configured the FW from the board if you selected MASTER the ID accepted is 2 if is SLAVE then the ID accepted is 1.

BR,

Alexandru Nan

0 Kudos
154 Views
jm_shin
Contributor I

Dear Alexandru Nan

Thank you as for answer.

We have applied an external 12V power to the SBC transceiver.
We also checked that the signal was normally transferred to the CAN H / L pin, MCU CAN TX/RX pin using the oscilloscope.
However, the example code does not recognize the RX signal.

I suspect the ID you mentioned.(MASTER / SLAVE)
Could you please explain in more detail.

Thanks

0 Kudos
155 Views
alexandrunan
NXP Employee
NXP Employee

By default the example came configured as MASTER.

/* Use this define to specify if the application runs as master or slave */
#define MASTER
/* #define SLAVE */

/* Definition of the TX and RX message buffers depending on the bus role */
#if defined(MASTER)
#define TX_MAILBOX (1UL)
#define TX_MSG_ID (1UL)
#define RX_MAILBOX (0UL)
#define RX_MSG_ID (2UL)
#elif defined(SLAVE)
#define TX_MAILBOX (0UL)
#define TX_MSG_ID (2UL)
#define RX_MAILBOX (1UL)
#define RX_MSG_ID (1UL)
#endif

If you used the default configuration then the expected frame should be CAN_FD with ID 2 and payload 1 byte with data[0] as 0 or 1.

To check if you receive something pres one of the buttons and you should receive an FD frame with ID 1.

View solution in original post

0 Kudos