CAN Transmit Issue

取消
显示结果 
显示  仅  | 搜索替代 
您的意思是: 

CAN Transmit Issue

334 次查看
Vamshi_
Contributor II

Hii,

  Here I am trying to transmit some dummy data from S32K148 to USBCAN_FD Tool using standard CAN, but I am not able to receive any data at the tool and when I am debugging the code I am getting CAN clock not sync, so can you tell me where did i made the mistake and also here I am using TJA1042B CAN transducer. and I have configured it to active mode by setting the pin low.

And also I will share my code and Pics of the config what I did.Screenshot 2025-11-13 054731.pngScreenshot 2025-11-13 054924.pngScreenshot 2025-11-13 054936.pngScreenshot 2025-11-13 054954.pngScreenshot 2025-11-13 055009.pngScreenshot 2025-11-13 055021.pngScreenshot 2025-11-13 055107.pngScreenshot 2025-11-13 055119.pngScreenshot 2025-11-13 055139.pngScreenshot 2025-11-13 055154.pngScreenshot 2025-11-13 055232.pngScreenshot 2025-11-13 055251.pngScreenshot 2025-11-13 055313.pngScreenshot 2025-11-13 055743.png

/*
* (c) Copyright 2020 NXP
*
* NXP Confidential. This software is owned or controlled by NXP and may only be used strictly
* in accordance with the applicable license terms. By expressly accepting
* such terms or by downloading, installing, activating and/or otherwise using
* the software, you are agreeing that you have read, and that you agree to
* comply with and are bound by, such license terms. If you do not agree to
* be bound by the applicable license terms, then you may not retain,
* install, activate or otherwise use the software.
*
* This file contains sample code only. It is not part of the production code deliverables.
*/

#ifdef __cplusplus
extern "C" {
#endif

/*==================================================================================================
* INCLUDE FILES
* 1) system and project includes
* 2) needed interfaces from external units
* 3) internal and external interfaces from this unit
==================================================================================================*/
#include "Mcu.h"
#include "Platform.h"
#include "Can_43_FLEXCAN.h"
#include "SchM_Can_43_FLEXCAN.h"
#include "check_example.h"
#include "stdio.h"
#include "Dio.h"

/*==================================================================================================
* LOCAL TYPEDEFS (STRUCTURES, UNIONS, ENUMS)
==================================================================================================*/

/*==================================================================================================
* LOCAL MACROS
==================================================================================================*/

/*==================================================================================================
* LOCAL CONSTANTS
==================================================================================================*/

/*==================================================================================================
* LOCAL VARIABLES
==================================================================================================*/

/*==================================================================================================
* GLOBAL CONSTANTS
==================================================================================================*/

uint8 Can_au8Sdu8bytes[8U] = {0x01U, 0x02U, 0x03U, 0x04U, 0x05U, 0x06U, 0x07U, 0x08};

/*==================================================================================================
* GLOBAL VARIABLES
==================================================================================================*/

uint8 CanIf_u8TxConfirmCnt = 0U;
boolean CanIf_bTxFlag = FALSE;
uint8 CanIf_u8RxIndicationCnt = 0U;
boolean CanIf_bRxFlag = FALSE;
Std_ReturnType status ;
uint8 dummyData1[8] = {0x11,0x11,0x11,0x11,0x11,0x11,0x11,0x11};
Can_PduType txPdu1;
uint8 rxData[8] = {0}; // Buffer for received data
Can_PduType rxPdu1; // Received PDU object

/*==================================================================================================
* LOCAL FUNCTION PROTOTYPES
==================================================================================================*/
void CAN_Transmit(uint8* data, uint8 length);
void CAN_Receive(void);
void CAN_WaitForClockSync(void);

/*==================================================================================================
* LOCAL FUNCTIONS
==================================================================================================*/

/**
* @brief Wait for CAN controller to synchronize with CAN bus clock.
* This should be called after CAN controller is set to STARTED mode.
* The function will timeout if clock synchronization is not achieved.
*/

/*==================================================================================================
* GLOBAL FUNCTIONS
==================================================================================================*/

void CanIf_ControllerBusOff(uint8 ControllerId)
{
(void)ControllerId;
}

void CanIf_ControllerModeIndication(uint8 ControllerId, Can_ControllerStateType ControllerMode )
{
(void)ControllerId;
(void)ControllerMode;
}

void CanIf_TxConfirmation(PduIdType CanTxPduId)
{
CanIf_u8TxConfirmCnt++;
CanIf_bTxFlag = TRUE;
(void)CanTxPduId;
}

void CanIf_RxIndication(const Can_HwType* Mailbox, const PduInfoType* PduInfoPtr )
{
CanIf_u8RxIndicationCnt++;
CanIf_bRxFlag = TRUE;

// Copy received data to local buffer for CAN_Receive()
if ((PduInfoPtr != NULL_PTR) && (PduInfoPtr->SduLength <= 8)) {
for (uint8 i = 0; i < PduInfoPtr->SduLength; i++)
{
rxData[i] = PduInfoPtr->SduDataPtr[i];
}
rxPdu1.id = Mailbox->CanId;
rxPdu1.length = PduInfoPtr->SduLength;
rxPdu1.sdu = rxData;
}

(void)Mailbox;
(void)PduInfoPtr;
}

void Can_DummyDelay(uint32 loops)
{
VAR( volatile uint32, CAN_VAR) data = 0xAA55AA55;
VAR( volatile uint32, CAN_VAR) contor1 = 0;
VAR( volatile uint32, CAN_VAR) contor2 = loops;
do
{
for (contor1 = 0; contor1 < 0x2FF; contor1++)
{
data ^= (1 << contor1) | (0xAAAAAA | contor2);
}
contor2--;
} while( contor2 > 0);
}

Can_PduType Can_CreatePduInfo(Can_IdType id, PduIdType swPduHandle, uint8 length, uint8* sdu)
{
Can_PduType PduInfo;

PduInfo.id = id;
PduInfo.swPduHandle = swPduHandle;
PduInfo.length = length;
PduInfo.sdu = sdu;

return PduInfo;
}

uint32_t counter1=0;
uint32_t counter2=0;
uint32_t counter3=0;
uint8_t step=0;

// Function for CAN transmit
void CAN_Transmit(uint8* data, uint8 length)
{
Can_PduType txPdu;
txPdu.id = 0x111; // Example CAN ID
txPdu.length = length;
txPdu.swPduHandle = 0;
txPdu.sdu = data;

status = Can_43_FLEXCAN_Write(CanHardwareObject_TX, &txPdu);
if(status==E_OK)
{
printf("CAN_Transmit: Transfer successful\n");
}
else
{
printf("CAN_Transmit: Transfer not successful!!\n");
}
}


int main(void)
{
CanIf_bTxFlag = FALSE;
CanIf_bRxFlag = FALSE;
#if (MCU_PRECOMPILE_SUPPORT == STD_ON)
Mcu_Init(NULL_PTR);
#elif (MCU_PRECOMPILE_SUPPORT == STD_OFF)
Mcu_Init(&Mcu_Config_VS_0);
#endif /* (MCU_PRECOMPILE_SUPPORT == STD_ON) */
/* Initialize the clock tree and apply PLL as system clock */
Mcu_InitClock(McuClockSettingConfig_0);
#if (MCU_NO_PLL == STD_OFF)
while ( MCU_PLL_LOCKED != Mcu_GetPllStatus() )
{
/* Busy wait until the System PLL is locked */
}
Mcu_DistributePllClock();
#endif
Mcu_SetMode(McuModeSettingConf_0);
/* Initialize Platform driver */
Platform_Init(NULL_PTR);
Can_43_FLEXCAN_Init(NULL_PTR);

Dio_WriteChannel(DioConf_DioChannel_DioChannel_CANSTDBY,STD_LOW);

Can_43_FLEXCAN_SetControllerMode(CanController_0, CAN_CS_STARTED);

/* ------- */

txPdu1.id = 0x111;
txPdu1.length = 8;
txPdu1.swPduHandle = 0;
txPdu1.sdu = dummyData1;

while(1)
{
// Example: transmit and attempt to receive
CAN_Transmit(dummyData1, 8);
Can_DummyDelay(0xFFFFF);

}

return (0U);

}

#ifdef __cplusplus
}
#endif

/** @} */

 

0 项奖励
回复
3 回复数

253 次查看
Senlent
NXP TechSupport
NXP TechSupport

Hi@Vamshi_

Your "Port" configuration is wrong, please refer to below configurations.

Senlent_0-1763102788099.pngSenlent_1-1763102794984.pngSenlent_2-1763102810362.png

Senlent_3-1763102942518.png

 

0 项奖励
回复

287 次查看
Vamshi_
Contributor II

This is my project file.

0 项奖励
回复

295 次查看
Senlent
NXP TechSupport
NXP TechSupport

Hi@Vamshi_

Please share your project , and I will take the time to check it for you.

0 项奖励
回复
%3CLINGO-SUB%20id%3D%22lingo-sub-2203985%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%3ECAN%20%E4%BC%A0%E8%BE%93%E9%97%AE%E9%A2%98%3C%2FLINGO-SUB%3E%3CLINGO-BODY%20id%3D%22lingo-body-2203985%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%3E%3CP%3EHii%E3%80%81%3C%2FP%3E%3CP%3E%20%20%E5%9C%A8%E8%BF%99%E9%87%8C%EF%BC%8C%E6%88%91%E8%AF%95%E5%9B%BE%E4%BD%BF%E7%94%A8%E6%A0%87%E5%87%86%20CAN%20%E5%B0%86%E4%B8%80%E4%BA%9B%E5%81%87%E6%95%B0%E6%8D%AE%E4%BB%8E%20S32K148%20%E5%8F%91%E9%80%81%E5%88%B0%20USBCAN_FD%20%E5%B7%A5%E5%85%B7%EF%BC%8C%E4%BD%86%E6%88%91%E6%97%A0%E6%B3%95%E5%9C%A8%E5%B7%A5%E5%85%B7%E4%B8%8A%E6%8E%A5%E6%94%B6%E5%88%B0%E4%BB%BB%E4%BD%95%E6%95%B0%E6%8D%AE%EF%BC%8C%E8%80%8C%E4%B8%94%E5%9C%A8%E8%B0%83%E8%AF%95%E4%BB%A3%E7%A0%81%E6%97%B6%EF%BC%8C%E6%88%91%E5%8F%91%E7%8E%B0%20CAN%20%E6%97%B6%E9%92%9F%E4%B8%8D%E5%90%8C%E6%AD%A5%EF%BC%8C%E5%9B%A0%E6%AD%A4%E6%82%A8%E8%83%BD%E5%90%A6%E5%91%8A%E8%AF%89%E6%88%91%E5%93%AA%E9%87%8C%E5%87%BA%E4%BA%86%E5%B7%AE%E9%94%99%EF%BC%8C%E8%80%8C%E4%B8%94%E6%88%91%E5%9C%A8%E8%BF%99%E9%87%8C%E4%BD%BF%E7%94%A8%E7%9A%84%E6%98%AF%20TJA1042B%20CAN%20%E4%BC%A0%E6%84%9F%E5%99%A8%E3%80%82%E6%88%91%E5%B7%B2%E7%BB%8F%E9%80%9A%E8%BF%87%E5%B0%86%E5%BC%95%E8%84%9A%E8%AE%BE%E7%BD%AE%E4%B8%BA%E4%BD%8E%E7%94%B5%E5%B9%B3%E5%B0%86%E5%85%B6%E9%85%8D%E7%BD%AE%E4%B8%BA%E8%BF%90%E8%A1%8C%E6%A8%A1%E5%BC%8F%E3%80%82%3C%2FP%3E%3CP%3E%E6%AD%A4%E5%A4%96%EF%BC%8C%E6%88%91%E8%BF%98%E5%B0%86%E5%88%86%E4%BA%AB%E6%88%91%E7%9A%84%E4%BB%A3%E7%A0%81%E5%92%8C%E9%85%8D%E7%BD%AE%E5%9B%BE%E7%89%87%E3%80%82%3CSPAN%20class%3D%22lia-inline-image-display-wrapper%20lia-image-align-inline%22%20image-alt%3D%22Screenshot%202025-11-13%20054731.png%22%20style%3D%22width%3A%20999px%3B%22%3E%3Cspan%20class%3D%22lia-inline-image-display-wrapper%22%20image-alt%3D%22Screenshot%202025-11-13%20054731.png%22%20style%3D%22width%3A%20999px%3B%22%3E%3Cimg%20src%3D%22https%3A%2F%2Fcommunity.nxp.com%2Ft5%2Fimage%2Fserverpage%2Fimage-id%2F365366i870CFF75BD44D58B%2Fimage-size%2Flarge%3Fv%3Dv2%26amp%3Bpx%3D999%22%20role%3D%22button%22%20title%3D%22Screenshot%202025-11-13%20054731.png%22%20alt%3D%22Screenshot%202025-11-13%20054731.png%22%20%2F%3E%3C%2Fspan%3E%3C%2FSPAN%3E%3CSPAN%20class%3D%22lia-inline-image-display-wrapper%20lia-image-align-inline%22%20image-alt%3D%22Screenshot%202025-11-13%20054924.png%22%20style%3D%22width%3A%20999px%3B%22%3E%3Cspan%20class%3D%22lia-inline-image-display-wrapper%22%20image-alt%3D%22Screenshot%202025-11-13%20054924.png%22%20style%3D%22width%3A%20999px%3B%22%3E%3Cimg%20src%3D%22https%3A%2F%2Fcommunity.nxp.com%2Ft5%2Fimage%2Fserverpage%2Fimage-id%2F365367i0E5A3809344F3AE9%2Fimage-size%2Flarge%3Fv%3Dv2%26amp%3Bpx%3D999%22%20role%3D%22button%22%20title%3D%22Screenshot%202025-11-13%20054924.png%22%20alt%3D%22Screenshot%202025-11-13%20054924.png%22%20%2F%3E%3C%2Fspan%3E%3C%2FSPAN%3E%3CSPAN%20class%3D%22lia-inline-image-display-wrapper%20lia-image-align-inline%22%20image-alt%3D%22Screenshot%202025-11-13%20054936.png%22%20style%3D%22width%3A%20999px%3B%22%3E%3Cspan%20class%3D%22lia-inline-image-display-wrapper%22%20image-alt%3D%22Screenshot%202025-11-13%20054936.png%22%20style%3D%22width%3A%20999px%3B%22%3E%3Cimg%20src%3D%22https%3A%2F%2Fcommunity.nxp.com%2Ft5%2Fimage%2Fserverpage%2Fimage-id%2F365368i11AE89AC686B3E8B%2Fimage-size%2Flarge%3Fv%3Dv2%26amp%3Bpx%3D999%22%20role%3D%22button%22%20title%3D%22Screenshot%202025-11-13%20054936.png%22%20alt%3D%22Screenshot%202025-11-13%20054936.png%22%20%2F%3E%3C%2Fspan%3E%3C%2FSPAN%3E%3CSPAN%20class%3D%22lia-inline-image-display-wrapper%20lia-image-align-inline%22%20image-alt%3D%22Screenshot%202025-11-13%20054954.png%22%20style%3D%22width%3A%20999px%3B%22%3E%3Cspan%20class%3D%22lia-inline-image-display-wrapper%22%20image-alt%3D%22Screenshot%202025-11-13%20054954.png%22%20style%3D%22width%3A%20999px%3B%22%3E%3Cimg%20src%3D%22https%3A%2F%2Fcommunity.nxp.com%2Ft5%2Fimage%2Fserverpage%2Fimage-id%2F365369i1B87C2A694169A92%2Fimage-size%2Flarge%3Fv%3Dv2%26amp%3Bpx%3D999%22%20role%3D%22button%22%20title%3D%22Screenshot%202025-11-13%20054954.png%22%20alt%3D%22Screenshot%202025-11-13%20054954.png%22%20%2F%3E%3C%2Fspan%3E%3C%2FSPAN%3E%3CSPAN%20class%3D%22lia-inline-image-display-wrapper%20lia-image-align-inline%22%20image-alt%3D%22Screenshot%202025-11-13%20055009.png%22%20style%3D%22width%3A%20999px%3B%22%3E%3Cspan%20class%3D%22lia-inline-image-display-wrapper%22%20image-alt%3D%22Screenshot%202025-11-13%20055009.png%22%20style%3D%22width%3A%20999px%3B%22%3E%3Cimg%20src%3D%22https%3A%2F%2Fcommunity.nxp.com%2Ft5%2Fimage%2Fserverpage%2Fimage-id%2F365370i2E2579C351904430%2Fimage-size%2Flarge%3Fv%3Dv2%26amp%3Bpx%3D999%22%20role%3D%22button%22%20title%3D%22Screenshot%202025-11-13%20055009.png%22%20alt%3D%22Screenshot%202025-11-13%20055009.png%22%20%2F%3E%3C%2Fspan%3E%3C%2FSPAN%3E%3CSPAN%20class%3D%22lia-inline-image-display-wrapper%20lia-image-align-inline%22%20image-alt%3D%22Screenshot%202025-11-13%20055021.png%22%20style%3D%22width%3A%20999px%3B%22%3E%3Cspan%20class%3D%22lia-inline-image-display-wrapper%22%20image-alt%3D%22Screenshot%202025-11-13%20055021.png%22%20style%3D%22width%3A%20999px%3B%22%3E%3Cimg%20src%3D%22https%3A%2F%2Fcommunity.nxp.com%2Ft5%2Fimage%2Fserverpage%2Fimage-id%2F365371i7C4AA82E6C9E6C9E%2Fimage-size%2Flarge%3Fv%3Dv2%26amp%3Bpx%3D999%22%20role%3D%22button%22%20title%3D%22Screenshot%202025-11-13%20055021.png%22%20alt%3D%22Screenshot%202025-11-13%20055021.png%22%20%2F%3E%3C%2Fspan%3E%3C%2FSPAN%3E%3CSPAN%20class%3D%22lia-inline-image-display-wrapper%20lia-image-align-inline%22%20image-alt%3D%22Screenshot%202025-11-13%20055107.png%22%20style%3D%22width%3A%20999px%3B%22%3E%3Cspan%20class%3D%22lia-inline-image-display-wrapper%22%20image-alt%3D%22Screenshot%202025-11-13%20055107.png%22%20style%3D%22width%3A%20999px%3B%22%3E%3Cimg%20src%3D%22https%3A%2F%2Fcommunity.nxp.com%2Ft5%2Fimage%2Fserverpage%2Fimage-id%2F365372i3B613397E7AAFFC7%2Fimage-size%2Flarge%3Fv%3Dv2%26amp%3Bpx%3D999%22%20role%3D%22button%22%20title%3D%22Screenshot%202025-11-13%20055107.png%22%20alt%3D%22Screenshot%202025-11-13%20055107.png%22%20%2F%3E%3C%2Fspan%3E%3C%2FSPAN%3E%3CSPAN%20class%3D%22lia-inline-image-display-wrapper%20lia-image-align-inline%22%20image-alt%3D%22Screenshot%202025-11-13%20055119.png%22%20style%3D%22width%3A%20999px%3B%22%3E%3Cspan%20class%3D%22lia-inline-image-display-wrapper%22%20image-alt%3D%22Screenshot%202025-11-13%20055119.png%22%20style%3D%22width%3A%20999px%3B%22%3E%3Cimg%20src%3D%22https%3A%2F%2Fcommunity.nxp.com%2Ft5%2Fimage%2Fserverpage%2Fimage-id%2F365373i24FBB6CE74349ED1%2Fimage-size%2Flarge%3Fv%3Dv2%26amp%3Bpx%3D999%22%20role%3D%22button%22%20title%3D%22Screenshot%202025-11-13%20055119.png%22%20alt%3D%22Screenshot%202025-11-13%20055119.png%22%20%2F%3E%3C%2Fspan%3E%3C%2FSPAN%3E%3CSPAN%20class%3D%22lia-inline-image-display-wrapper%20lia-image-align-inline%22%20image-alt%3D%22Screenshot%202025-11-13%20055139.png%22%20style%3D%22width%3A%20999px%3B%22%3E%3Cspan%20class%3D%22lia-inline-image-display-wrapper%22%20image-alt%3D%22Screenshot%202025-11-13%20055139.png%22%20style%3D%22width%3A%20999px%3B%22%3E%3Cimg%20src%3D%22https%3A%2F%2Fcommunity.nxp.com%2Ft5%2Fimage%2Fserverpage%2Fimage-id%2F365374iC226829323C7FA30%2Fimage-size%2Flarge%3Fv%3Dv2%26amp%3Bpx%3D999%22%20role%3D%22button%22%20title%3D%22Screenshot%202025-11-13%20055139.png%22%20alt%3D%22Screenshot%202025-11-13%20055139.png%22%20%2F%3E%3C%2Fspan%3E%3C%2FSPAN%3E%3CSPAN%20class%3D%22lia-inline-image-display-wrapper%20lia-image-align-inline%22%20image-alt%3D%22Screenshot%202025-11-13%20055154.png%22%20style%3D%22width%3A%20999px%3B%22%3E%3Cspan%20class%3D%22lia-inline-image-display-wrapper%22%20image-alt%3D%22Screenshot%202025-11-13%20055154.png%22%20style%3D%22width%3A%20999px%3B%22%3E%3Cimg%20src%3D%22https%3A%2F%2Fcommunity.nxp.com%2Ft5%2Fimage%2Fserverpage%2Fimage-id%2F365375iFDB355DE841D1C09%2Fimage-size%2Flarge%3Fv%3Dv2%26amp%3Bpx%3D999%22%20role%3D%22button%22%20title%3D%22Screenshot%202025-11-13%20055154.png%22%20alt%3D%22Screenshot%202025-11-13%20055154.png%22%20%2F%3E%3C%2Fspan%3E%3C%2FSPAN%3E%3CSPAN%20class%3D%22lia-inline-image-display-wrapper%20lia-image-align-inline%22%20image-alt%3D%22Screenshot%202025-11-13%20055232.png%22%20style%3D%22width%3A%20999px%3B%22%3E%3Cspan%20class%3D%22lia-inline-image-display-wrapper%22%20image-alt%3D%22Screenshot%202025-11-13%20055232.png%22%20style%3D%22width%3A%20999px%3B%22%3E%3Cimg%20src%3D%22https%3A%2F%2Fcommunity.nxp.com%2Ft5%2Fimage%2Fserverpage%2Fimage-id%2F365376iAE61F60F04D2F64D%2Fimage-size%2Flarge%3Fv%3Dv2%26amp%3Bpx%3D999%22%20role%3D%22button%22%20title%3D%22Screenshot%202025-11-13%20055232.png%22%20alt%3D%22Screenshot%202025-11-13%20055232.png%22%20%2F%3E%3C%2Fspan%3E%3C%2FSPAN%3E%3CSPAN%20class%3D%22lia-inline-image-display-wrapper%20lia-image-align-inline%22%20image-alt%3D%22Screenshot%202025-11-13%20055251.png%22%20style%3D%22width%3A%20999px%3B%22%3E%3Cspan%20class%3D%22lia-inline-image-display-wrapper%22%20image-alt%3D%22Screenshot%202025-11-13%20055251.png%22%20style%3D%22width%3A%20999px%3B%22%3E%3Cimg%20src%3D%22https%3A%2F%2Fcommunity.nxp.com%2Ft5%2Fimage%2Fserverpage%2Fimage-id%2F365377iDD7732ED92ABBB1F%2Fimage-size%2Flarge%3Fv%3Dv2%26amp%3Bpx%3D999%22%20role%3D%22button%22%20title%3D%22Screenshot%202025-11-13%20055251.png%22%20alt%3D%22Screenshot%202025-11-13%20055251.png%22%20%2F%3E%3C%2Fspan%3E%3C%2FSPAN%3E%3CSPAN%20class%3D%22lia-inline-image-display-wrapper%20lia-image-align-inline%22%20image-alt%3D%22Screenshot%202025-11-13%20055313.png%22%20style%3D%22width%3A%20999px%3B%22%3E%3Cspan%20class%3D%22lia-inline-image-display-wrapper%22%20image-alt%3D%22Screenshot%202025-11-13%20055313.png%22%20style%3D%22width%3A%20999px%3B%22%3E%3Cimg%20src%3D%22https%3A%2F%2Fcommunity.nxp.com%2Ft5%2Fimage%2Fserverpage%2Fimage-id%2F365378iFF89FE6AC95A5A22%2Fimage-size%2Flarge%3Fv%3Dv2%26amp%3Bpx%3D999%22%20role%3D%22button%22%20title%3D%22Screenshot%202025-11-13%20055313.png%22%20alt%3D%22Screenshot%202025-11-13%20055313.png%22%20%2F%3E%3C%2Fspan%3E%3C%2FSPAN%3E%3CSPAN%20class%3D%22lia-inline-image-display-wrapper%20lia-image-align-inline%22%20image-alt%3D%22Screenshot%202025-11-13%20055743.png%22%20style%3D%22width%3A%20999px%3B%22%3E%3Cspan%20class%3D%22lia-inline-image-display-wrapper%22%20image-alt%3D%22Screenshot%202025-11-13%20055743.png%22%20style%3D%22width%3A%20999px%3B%22%3E%3Cimg%20src%3D%22https%3A%2F%2Fcommunity.nxp.com%2Ft5%2Fimage%2Fserverpage%2Fimage-id%2F365379i93110DB122BA014E%2Fimage-size%2Flarge%3Fv%3Dv2%26amp%3Bpx%3D999%22%20role%3D%22button%22%20title%3D%22Screenshot%202025-11-13%20055743.png%22%20alt%3D%22Screenshot%202025-11-13%20055743.png%22%20%2F%3E%3C%2Fspan%3E%3C%2FSPAN%3E%3C%2FP%3E%3CP%3E%2F*%3CBR%20%2F%3E*%20(c)%20Copyright%202020%20NXP%3CBR%20%2F%3E*%3CBR%20%2F%3E*%20NXP%20Confidential.%E6%9C%AC%E8%BD%AF%E4%BB%B6%E7%94%B1%E6%81%A9%E6%99%BA%E6%B5%A6%E6%89%80%E6%9C%89%E6%88%96%E6%8E%A7%E5%88%B6%EF%BC%8C%E5%8F%AA%E8%83%BD%E4%B8%A5%E6%A0%BC%E6%8C%89%E7%85%A7%E9%80%82%E7%94%A8%E7%9A%84%E8%AE%B8%E5%8F%AF%E6%9D%A1%E6%AC%BE%E4%BD%BF%E7%94%A8%3CBR%20%2F%3E*%E3%80%82%E6%98%8E%E7%A1%AE%E6%8E%A5%E5%8F%97%3CBR%20%2F%3E*%20%E6%AD%A4%E7%B1%BB%E6%9D%A1%E6%AC%BE%EF%BC%8C%E6%88%96%E4%B8%8B%E8%BD%BD%E3%80%81%E5%AE%89%E8%A3%85%E3%80%81%E6%BF%80%E6%B4%BB%E5%92%8C%2F%E6%88%96%E4%BB%A5%E5%85%B6%E4%BB%96%E6%96%B9%E5%BC%8F%E4%BD%BF%E7%94%A8%3CBR%20%2F%3E*%20%E8%BD%AF%E4%BB%B6%EF%BC%8C%E5%8D%B3%E8%A1%A8%E7%A4%BA%E6%82%A8%E5%90%8C%E6%84%8F%E5%B7%B2%E9%98%85%E8%AF%BB%E5%B9%B6%E5%90%8C%E6%84%8F%3CBR%20%2F%3E*%20%E9%81%B5%E5%AE%88%E6%AD%A4%E7%B1%BB%E8%AE%B8%E5%8F%AF%E6%9D%A1%E6%AC%BE%EF%BC%8C%E5%B9%B6%E5%8F%97%E5%85%B6%E7%BA%A6%E6%9D%9F%E3%80%82%E5%A6%82%E6%9E%9C%E6%82%A8%E4%B8%8D%E5%90%8C%E6%84%8F%3CBR%20%2F%3E*%20%E5%8F%97%E9%80%82%E7%94%A8%E8%AE%B8%E5%8F%AF%E6%9D%A1%E6%AC%BE%E7%9A%84%E7%BA%A6%E6%9D%9F%EF%BC%8C%E5%88%99%E4%B8%8D%E5%BE%97%E4%BF%9D%E7%95%99%E3%80%81%3CBR%20%2F%3E*%20%E5%AE%89%E8%A3%85%E3%80%81%E6%BF%80%E6%B4%BB%E6%88%96%E4%BB%A5%E5%85%B6%E4%BB%96%E6%96%B9%E5%BC%8F%E4%BD%BF%E7%94%A8%E6%9C%AC%E8%BD%AF%E4%BB%B6%E3%80%82%3CBR%20%2F%3E*%3CBR%20%2F%3E*%20%E6%9C%AC%E6%96%87%E4%BB%B6%E4%BB%85%E5%8C%85%E5%90%AB%E7%A4%BA%E4%BE%8B%E4%BB%A3%E7%A0%81%E3%80%82%E5%AE%83%E4%B8%8D%E6%98%AF%E7%94%9F%E4%BA%A7%E4%BB%A3%E7%A0%81%E4%BA%A4%E4%BB%98%E6%88%90%E6%9E%9C%E7%9A%84%E4%B8%80%E9%83%A8%E5%88%86%E3%80%82%3CBR%20%2F%3E*%2F%3C%2FP%3E%3CP%3E%23ifdef%20__cplusplus%3CBR%20%2F%3Eextern%22C%22%20%7B%3CBR%20%2F%3E%23endif%3C%2FP%3E%3CP%3E%2F*%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3CBR%20%2F%3E*%20INCLUDE%20FILES%3CBR%20%2F%3E*%201)%20%E7%B3%BB%E7%BB%9F%E5%92%8C%E9%A1%B9%E7%9B%AE%E5%8C%85%E6%8B%AC%3CBR%20%2F%3E*%202)%20%E5%A4%96%E9%83%A8%E5%8D%95%E5%85%83%E9%9C%80%E8%A6%81%E7%9A%84%E6%8E%A5%E5%8F%A3%3CBR%20%2F%3E*%203)%20%E6%9C%AC%E5%8D%95%E5%85%83%E7%9A%84%E5%86%85%E9%83%A8%E5%92%8C%E5%A4%96%E9%83%A8%E6%8E%A5%E5%8F%A3%3CBR%20%2F%3E%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D*%2F%3CBR%20%2F%3E%23include%22Mcu.h%22%3CBR%20%2F%3E%23include%22Platform.h%22%3CBR%20%2F%3E%23include%22Can_43_FLEXCAN.h%22%3CBR%20%2F%3E%20%23include%22SchM_Can_43_FLEXCAN.h%22%3CBR%20%2F%3E%20%23include%22check_example.h%22%3CBR%20%2F%3E%20%23include%22stdio.h%22%3CBR%20%2F%3E%23include%22Dio.h%22%3C%2FP%3E%3CP%3E%2F*%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3CBR%20%2F%3E*%20LOCAL%20TYPEDEFS%20(STRUCTURES%2C%20UNIONS%2C%20ENUMS)%3CBR%20%2F%3E%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D*%2F%3C%2FP%3E%3CP%3E%2F*%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3CBR%20%2F%3E*%20LOCAL%20MACROS%3CBR%20%2F%3E%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D*%2F%3C%2FP%3E%3CP%3E%2F*%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3CBR%20%2F%3E*%20LOCAL%20CONSTANTS%3CBR%20%2F%3E%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D*%2F%3C%2FP%3E%3CP%3E%2F*%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3CBR%20%2F%3E*%20LOCAL%20VARIABLES%3CBR%20%2F%3E%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D*%2F%3C%2FP%3E%3CP%3E%2F*%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3CBR%20%2F%3E*%20GLOBAL%20CONSTANTS%3CBR%20%2F%3E%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D*%2F%3C%2FP%3E%3CP%3Euint8%20Can_au8Sdu8bytes%5B8U%5D%20%3D%20%7B0x01U%2C%200x02U%2C%200x03U%2C%200x04U%2C%200x05U%2C%200x06U%2C%200x07U%2C%200x08%7D%EF%BC%9B%3C%2FP%3E%3CP%3E%2F*%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3CBR%20%2F%3E*%20GLOBAL%20VARIABLES%3CBR%20%2F%3E%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D*%2F%3C%2FP%3E%3CP%3Euint8%20CanIf_u8TxConfirmCnt%20%3D%200U%3B%3CBR%20%2F%3Eboolean%20CanIf_bTxFlag%20%3D%20FALSE%3B%3CBR%20%2F%3Euint8%20CanIf_u8RxIndicationCnt%20%3D%200U%3B%3CBR%20%2F%3Eboolean%20CanIf_bRxFlag%20%3D%20FALSE%3B%3CBR%20%2F%3EStd_ReturnType%20status%20%EF%BC%9B%3CBR%20%2F%3Euint8%20dummyData1%5B8%5D%20%3D%20%7B0x11%2C0x11%2C0x11%2C0x11%2C0x11%2C0x11%2C0x11%2C0x11%2C0x11%7D%3B%3CBR%20%2F%3ECan_PduType%20txPdu1%3B%3CBR%20%2F%3Euint8%20rxData%5B8%5D%20%3D%20%7B0%7D%3B%20%2F%2F%20%E6%8E%A5%E6%94%B6%E6%95%B0%E6%8D%AE%E7%9A%84%E7%BC%93%E5%86%B2%E5%8C%BA%3CBR%20%2F%3ECan_PduType%20rxPdu1%3B%20%2F%2F%20%E6%8E%A5%E6%94%B6%E7%9A%84%20PDU%20%E5%AF%B9%E8%B1%A1%3C%2FP%3E%3CP%3E%2F*%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3CBR%20%2F%3E*%20%E6%9C%AC%E5%9C%B0%E5%87%BD%E6%95%B0%20PROTOTYPES%3CBR%20%2F%3E%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D*%2F%3CBR%20%2F%3Evoid%20CAN_Transmit(uint8*%20data%2C%20uint8%20length)%3B%3CBR%20%2F%3Evoid%20CAN_Receive(void)%3B%3CBR%20%2F%3Evoid%20CAN_WaitForClockSync(void)%EF%BC%9B%3C%2FP%3E%3CP%3E%2F*%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3CBR%20%2F%3E*%20LOCAL%20FUNCTIONS%3CBR%20%2F%3E%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D*%2F%3C%2FP%3E%3CP%3E%2F**%20%3CBR%20%2F%3E%20*%20%40brief%20%E7%AD%89%E5%BE%85%20CAN%20%E6%8E%A7%E5%88%B6%E5%99%A8%E4%B8%8E%20CAN%20%E6%80%BB%E7%BA%BF%E6%97%B6%E9%92%9F%E5%90%8C%E6%AD%A5%E3%80%82%3CBR%20%2F%3E*%20%E5%BA%94%E5%9C%A8%20CAN%20%E6%8E%A7%E5%88%B6%E5%99%A8%E8%AE%BE%E7%BD%AE%E4%B8%BA%E5%90%AF%E5%8A%A8%E6%A8%A1%E5%BC%8F%E5%90%8E%E8%B0%83%E7%94%A8%E3%80%82%3CBR%20%2F%3E*%20%E5%A6%82%E6%9E%9C%E6%97%A0%E6%B3%95%E5%AE%9E%E7%8E%B0%E6%97%B6%E9%92%9F%E5%90%8C%E6%AD%A5%EF%BC%8C%E5%87%BD%E6%95%B0%E5%B0%86%E8%B6%85%E6%97%B6%E3%80%82%3CBR%20%2F%3E*%2F%3C%2FP%3E%3CP%3E%2F*%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3CBR%20%2F%3E*%20GLOBAL%20FUNCTIONS%3CBR%20%2F%3E%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D%3D*%2F%3C%2FP%3E%3CP%3Evoid%20CanIf_ControllerBusOff(uint8%20ControllerId)%3CBR%20%2F%3E%7B%3CBR%20%2F%3E(void)ControllerId%3B%3CBR%20%2F%3E%7D%3C%2FP%3E%3CP%3Evoid%20CanIf_ControllerModeIndication(uint8%20ControllerId%2C%20Can_ControllerStateType%20ControllerMode%20)%3CBR%20%2F%3E%7B%3CBR%20%2F%3E(void)ControllerId%3B%3CBR%20%2F%3E(void)ControllerMode%3B%3CBR%20%2F%3E%7D%3C%2FP%3E%3CP%3Evoid%20CanIf_TxConfirmation(PduIdType%20CanTxPduId)%3CBR%20%2F%3E%7B%3CBR%20%2F%3ECanIf_u8TxConfirmCnt%2B%2B%2B%2B%3B%3CBR%20%2F%3ECanIf_bTxFlag%20%3D%20TRUE%3B%3CBR%20%2F%3E(void)CanTxPduId%3B%3CBR%20%2F%3E%7D%3C%2FP%3E%3CP%3Evoid%20CanIf_RxIndication(const%20Can_HwType*%20Mailbox%2C%20const%20PduInfoType*%20PduInfoPtr%20)%3CBR%20%2F%3E%7B%3CBR%20%2F%3ECanIf_u8RxIndicationCnt%2B%2B%3B%3CBR%20%2F%3ECanIf_bRxFlag%20%3D%20TRUE%EF%BC%9B%3C%2FP%3E%3CP%3E%2F%2F%20Copy%20received%20data%20to%20local%20buffer%20for%20CAN_Receive()%3CBR%20%2F%3Eif%20((PduInfoPtr%20%EF%BC%81%3D%20NULL_PTR)%26amp%3B%26amp%3B%20(PduInfoPtr-%26gt%3BSduLength%26lt%3B%3D%208))%20%7B%3CBR%20%2F%3Efor%20(uint8%20i%20%3D%200%3B%20i%26lt%3B%20PduInfoPtr-%26gt%3BSduLength%3B%20i%2B%2B)%3CBR%20%2F%3E%7B%3CBR%20%2F%3ErxData%5Bi%5D%20%3D%20PduInfoPtr-%26gt%3BSduDataPtr%5Bi%5D%3B%3CBR%20%2F%3E%7D%3CBR%20%2F%3ErxPdu1.id%20%3D%20Mailbox-%26gt%3BCanId%3B%3CBR%20%2F%3ErxPdu1.length%20%3D%20PduInfoPtr-%26gt%3BSduLength%3B%3CBR%20%2F%3ErxPdu1.sdu%20%3D%20rxData%3B%3CBR%20%2F%3E%7D%3C%2FP%3E%3CP%3E(void)Mailbox%3B%3CBR%20%2F%3E(void)PduInfoPtr%3B%3CBR%20%2F%3E%7D%3C%2FP%3E%3CP%3Evoid%20Can_DummyDelay(uint32%20loops)%3CBR%20%2F%3E%7B%3CBR%20%2F%3EVAR(%20volatile%20uint32%2C%20CAN_VAR)%20data%20%3D%200xAA55AA55%3B%3CBR%20%2F%3EVAR(%20volatile%20uint32%2C%20CAN_VAR)%20contor1%20%3D%200%3B%3CBR%20%2F%3EVAR(%20volatile%20uint32%2C%20CAN_VAR)%20contor2%20%3D%20loops%EF%BC%9B%3CBR%20%2F%3Edo%3CBR%20%2F%3E%7B%3CBR%20%2F%3Efor%20(contor1%20%3D%200%3B%20contor1%26lt%3B%200x2FF%3B%20contor1%2B%2B)%3CBR%20%2F%3E%7B%3CBR%20%2F%3Edata%20%5E%3D%20(1%26lt%3B%26lt%3B%20contor1)%20%7C%20(0xAAAA%20%7C%20contor2)%3B%3CBR%20%2F%3E%7D%3CBR%20%2F%3Econtor2--%3B%3CBR%20%2F%3E%7D%20while(%20contor2%26gt%3B%200)%3B%3CBR%20%2F%3E%7D%3C%2FP%3E%3CP%3ECan_PduType%20Can_CreatePduInfo(Can_IdType%20id%2C%20PduIdType%20swPduHandle%2C%20uint8%20length%2C%20uint8*%20sdu)%3CBR%20%2F%3E%7B%3CBR%20%2F%3ECan_PduType%20PduInfo%EF%BC%9B%3C%2FP%3E%3CP%3EPduInfo.id%20%3D%20id%3B%3CBR%20%2F%3EPduInfo.swPduHandle%20%3D%20swPduHandle%3B%3CBR%20%2F%3EPduInfo.length%20%3D%20length%3B%3CBR%20%2F%3EPduInfo.sdu%20%3D%20sdu%EF%BC%9B%3C%2FP%3E%3CP%3Ereturn%20PduInfo%3B%3CBR%20%2F%3E%7D%3C%2FP%3E%3CP%3Euint32_t%20counter1%3D0%3B%3CBR%20%2F%3Euint32_t%20counter2%3D0%3B%3CBR%20%2F%3Euint32_t%20counter3%3D0%3B%3CBR%20%2F%3Euint8_t%20step%3D0%EF%BC%9B%3C%2FP%3E%3CP%3E%2F%2F%20%E7%94%A8%E4%BA%8E%20CAN%20%E5%8F%91%E9%80%81%E7%9A%84%E5%87%BD%E6%95%B0%3CBR%20%2F%3Evoid%20CAN_Transmit(uint8*%20data%2C%20uint8%20length)%3CBR%20%2F%3E%7B%3CBR%20%2F%3ECan_PduType%20txPdu%3B%3CBR%20%2F%3EtxPdu.id%20%3D%200x111%3B%20%2F%2F%20%E7%A4%BA%E4%BE%8B%20CAN%20ID%3CBR%20%2F%3EtxPdu.length%20%3D%20length%3B%3CBR%20%2F%3EtxPdu.swPduHandle%20%3D%200%3B%3CBR%20%2F%3EtxPdu.sdu%20%3D%20data%EF%BC%9B%3C%2FP%3E%3CP%3Estatus%20%3D%20Can_43_FLEXCAN_Write(CanHardwareObject_TX%2C%26amp%3BtxPdu)%3B%3CBR%20%2F%3Eif(status%3D%3DE_OK)%3CBR%20%2F%3E%7B%3CBR%20%2F%3Eprintf(%22CAN_Transmit%3A%20Transfer%20successful%5Cn%22)%3B%3CBR%20%2F%3E%7D%3CBR%20%2F%3Eelse%3CBR%20%2F%3E%7B%3CBR%20%2F%3Eprintf(%22CAN_Transmit%3A%20Transfer%20not%20successful!!%5Cn%22)%3B%3CBR%20%2F%3E%7D%3CBR%20%2F%3E%7D%3C%2FP%3E%3CP%3E%3CBR%20%2F%3Eint%20main(void)%3CBR%20%2F%3E%7B%3CBR%20%2F%3ECanIf_bTxFlag%20%3D%20FALSE%3B%3CBR%20%2F%3ECanIf_bRxFlag%20%3D%20FALSE%3B%3CBR%20%2F%3E%23if%20(MCU_PRECOMPILE_SUPPORT%20%3D%3D%20STD_ON)%3CBR%20%2F%3EMcu_Init(NULL_PTR)%3B%3CBR%20%2F%3E%23elif%20(MCU_PRECOMPILE_SUPPORT%20%3D%3D%20STD_OFF)%3CBR%20%2F%3EMcu_Init(%26amp%3BMcu_Config_VS_0)%EF%BC%9B%3CBR%20%2F%3E%23endif%20%2F*%20(MCU_PRECOMPILE_SUPPORT%20%3D%3D%20STD_ON)%20*%2F%3CBR%20%2F%3E%2F*%20%E5%88%9D%E5%A7%8B%E5%8C%96%E6%97%B6%E9%92%9F%E6%A0%91%E5%B9%B6%E5%B0%86%20PLL%20%E7%94%A8%E4%BD%9C%E7%B3%BB%E7%BB%9F%E6%97%B6%E9%92%9F%20*%2F%3CBR%20%2F%3EMcu_InitClock(McuClockSettingConfig_0)%3B%3CBR%20%2F%3E%23if%20(MCU_NO_PLL%20%3D%3D%20STD_OFF)%3CBR%20%2F%3Ewhile%20(%20MCU_PLL_LOCKED%20%EF%BC%81%3D%20Mcu_GetPllStatus()%20)%3CBR%20%2F%3E%7B%3CBR%20%2F%3E%2F*%20Busy%20wait%20until%20the%20System%20PLL%20is%20locked%20*%2F%3CBR%20%2F%3E%7D%3CBR%20%2F%3EMcu_DistributePllClock()%EF%BC%9B%3CBR%20%2F%3E%23endif%3CBR%20%2F%3EMcu_SetMode(McuModeSettingConf_0)%3B%3CBR%20%2F%3E%2F*%20Initialize%20Platform%20driver%20*%2F%3CBR%20%2F%3EPlatform_Init(NULL_PTR)%3B%3CBR%20%2F%3ECan_43_FLEXCAN_Init(NULL_PTR)%EF%BC%9B%3C%2FP%3E%3CP%3EDio_WriteChannel(DioConf_DioChannel_DioChannel_CANSTDBY%2CSTD_LOW)%EF%BC%9B%3C%2FP%3E%3CP%3ECan_43_FLEXCAN_SetControllerMode(CanController_0%2C%20CAN_CS_STARTED)%EF%BC%9B%3C%2FP%3E%3CP%3E%2F*%20-------%20*%2F%3C%2FP%3E%3CP%3EtxPdu1.id%20%3D%200x111%3B%3CBR%20%2F%3EtxPdu1.length%20%3D%208%3B%3CBR%20%2F%3EtxPdu1.swPduHandle%20%3D%200%3B%3CBR%20%2F%3EtxPdu1.sdu%20%3D%20dummyData1%EF%BC%9B%3C%2FP%3E%3CP%3Ewhile(1)%3CBR%20%2F%3E%7B%3CBR%20%2F%3E%2F%2F%20%E7%A4%BA%E4%BE%8B%EF%BC%9A%E5%8F%91%E9%80%81%E5%B9%B6%E5%B0%9D%E8%AF%95%E6%8E%A5%E6%94%B6%3CBR%20%2F%3ECAN_Transmit(dummyData1%2C%208)%3B%3CBR%20%2F%3ECan_DummyDelay(0xFFFFF)%EF%BC%9B%3C%2FP%3E%3CP%3E%7D%3C%2FP%3E%3CP%3E%E8%BF%94%E5%9B%9E%20(0U)%EF%BC%9B%3C%2FP%3E%3CP%3E%7D%3C%2FP%3E%3CP%3E%23ifdef%20__cplusplus%3CBR%20%2F%3E%7D%3CBR%20%2F%3E%23endif%3C%2FP%3E%3CP%3E%2F**%20%40%7D*%2F%3C%2FP%3E%3CBR%20%2F%3E%3C%2FLINGO-BODY%3E%3CLINGO-SUB%20id%3D%22lingo-sub-2204939%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%20translate%3D%22no%22%3ERe%3A%20CAN%20Transmit%20Issue%3C%2FLINGO-SUB%3E%3CLINGO-BODY%20id%3D%22lingo-body-2204939%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%3E%3CP%3E%3CA%20href%3D%22mailto%3AHi%40Vamshi_%22%20target%3D%22_blank%22%20rel%3D%22nofollow%20noopener%20noreferrer%22%3EHi%40Vamshi_%3C%2FA%3E%3C%2FP%3E%0A%3CP%3E%E6%82%A8%E7%9A%84%22%E7%AB%AF%E5%8F%A3%22%20%E9%85%8D%E7%BD%AE%E6%9C%89%E8%AF%AF%EF%BC%8C%E8%AF%B7%E5%8F%82%E8%80%83%E4%BB%A5%E4%B8%8B%E9%85%8D%E7%BD%AE%E3%80%82%3C%2FP%3E%0A%3CP%3E%3CSPAN%20class%3D%22lia-inline-image-display-wrapper%20lia-image-align-inline%22%20image-alt%3D%22Senlent_0-1763102788099.png%22%20style%3D%22width%3A%20560px%3B%22%3E%3Cspan%20class%3D%22lia-inline-image-display-wrapper%22%20image-alt%3D%22Senlent_0-1763102788099.png%22%20style%3D%22width%3A%20560px%3B%22%3E%3Cimg%20src%3D%22https%3A%2F%2Fcommunity.nxp.com%2Ft5%2Fimage%2Fserverpage%2Fimage-id%2F365639i34A65A513BD03AC6%2Fimage-dimensions%2F560x311%3Fv%3Dv2%22%20width%3D%22560%22%20height%3D%22311%22%20role%3D%22button%22%20title%3D%22Senlent_0-1763102788099.png%22%20alt%3D%22Senlent_0-1763102788099.png%22%20%2F%3E%3C%2Fspan%3E%3C%2FSPAN%3E%3CSPAN%20class%3D%22lia-inline-image-display-wrapper%20lia-image-align-inline%22%20image-alt%3D%22Senlent_1-1763102794984.png%22%20style%3D%22width%3A%20556px%3B%22%3E%3Cspan%20class%3D%22lia-inline-image-display-wrapper%22%20image-alt%3D%22Senlent_1-1763102794984.png%22%20style%3D%22width%3A%20556px%3B%22%3E%3Cimg%20src%3D%22https%3A%2F%2Fcommunity.nxp.com%2Ft5%2Fimage%2Fserverpage%2Fimage-id%2F365640i9F323B34A226309A%2Fimage-dimensions%2F556x335%3Fv%3Dv2%22%20width%3D%22556%22%20height%3D%22335%22%20role%3D%22button%22%20title%3D%22Senlent_1-1763102794984.png%22%20alt%3D%22Senlent_1-1763102794984.png%22%20%2F%3E%3C%2Fspan%3E%3C%2FSPAN%3E%3CSPAN%20class%3D%22lia-inline-image-display-wrapper%20lia-image-align-inline%22%20image-alt%3D%22Senlent_2-1763102810362.png%22%20style%3D%22width%3A%20556px%3B%22%3E%3Cspan%20class%3D%22lia-inline-image-display-wrapper%22%20image-alt%3D%22Senlent_2-1763102810362.png%22%20style%3D%22width%3A%20556px%3B%22%3E%3Cimg%20src%3D%22https%3A%2F%2Fcommunity.nxp.com%2Ft5%2Fimage%2Fserverpage%2Fimage-id%2F365641i04371D8C1FC76D31%2Fimage-dimensions%2F556x335%3Fv%3Dv2%22%20width%3D%22556%22%20height%3D%22335%22%20role%3D%22button%22%20title%3D%22Senlent_2-1763102810362.png%22%20alt%3D%22Senlent_2-1763102810362.png%22%20%2F%3E%3C%2Fspan%3E%3C%2FSPAN%3E%3C%2FP%3E%0A%3CP%3E%3CSPAN%20class%3D%22lia-inline-image-display-wrapper%20lia-image-align-inline%22%20image-alt%3D%22Senlent_3-1763102942518.png%22%20style%3D%22width%3A%20558px%3B%22%3E%3Cspan%20class%3D%22lia-inline-image-display-wrapper%22%20image-alt%3D%22Senlent_3-1763102942518.png%22%20style%3D%22width%3A%20558px%3B%22%3E%3Cimg%20src%3D%22https%3A%2F%2Fcommunity.nxp.com%2Ft5%2Fimage%2Fserverpage%2Fimage-id%2F365642i721C5E59609F9708%2Fimage-dimensions%2F558x267%3Fv%3Dv2%22%20width%3D%22558%22%20height%3D%22267%22%20role%3D%22button%22%20title%3D%22Senlent_3-1763102942518.png%22%20alt%3D%22Senlent_3-1763102942518.png%22%20%2F%3E%3C%2Fspan%3E%3C%2FSPAN%3E%3C%2FP%3E%0A%3CBR%20%2F%3E%3C%2FLINGO-BODY%3E%3CLINGO-SUB%20id%3D%22lingo-sub-2204493%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%20translate%3D%22no%22%3ERe%3A%20CAN%20Transmit%20Issue%3C%2FLINGO-SUB%3E%3CLINGO-BODY%20id%3D%22lingo-body-2204493%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%3E%3CP%3E%E8%BF%99%E6%98%AF%E6%88%91%E7%9A%84%E9%A1%B9%E7%9B%AE%E6%96%87%E4%BB%B6%E3%80%82%3C%2FP%3E%3C%2FLINGO-BODY%3E%3CLINGO-SUB%20id%3D%22lingo-sub-2204300%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%20translate%3D%22no%22%3ERe%3A%20CAN%20Transmit%20Issue%3C%2FLINGO-SUB%3E%3CLINGO-BODY%20id%3D%22lingo-body-2204300%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%3E%3CP%3E%3CSPAN%3EHi%40Vamshi_%3C%2FSPAN%3E%3C%2FP%3E%0A%3CP%3E%E8%AF%B7%E5%88%86%E4%BA%AB%E6%82%A8%E7%9A%84%E9%A1%B9%E7%9B%AE%EF%BC%8C%E6%88%91%E4%BC%9A%E6%8A%BD%E6%97%B6%E9%97%B4%E4%B8%BA%E6%82%A8%E6%A3%80%E6%9F%A5%E3%80%82%3C%2FP%3E%3C%2FLINGO-BODY%3E