CAN problem of XMC4500 Relax Kit

Tip / Sign in to post questions, reply, level up, and achieve exciting badges. Know more

cross mob
Not applicable
I intend to transmit data by CAN with Relax Kit using DAVE4. However, the TX pin(p3.2 assigned) remains high level. I reassigned p1.12 for transmitting by the content of this post:
http://www.infineonforums.com/threads/2894-Manual-pin-assignment-for-can-bus
But high level remains as well. So anyone can tell me what I should do?
The code is posted as follows:

int main(void)
{
DAVE_STATUS_t init_status;
CAN_NODE_STATUS_t mo_transmit_status;
CAN_NODE_STATUS_t status;

init_status = DAVE_Init(); /* Initialization of DAVE APPs */

if(init_status == DAVE_STATUS_SUCCESS)
{

}
else
{
XMC_DEBUG("DAVE APPs initialization failed\n");

while(1U)
{

}
}


/* Placeholder for user application code. The while loop below can be replaced with user application code. */
while(1U)
{
mo_transmit_status = CAN_NODE_MO_Transmit(&CAN_NODE_0_LMO_01_Config);
if(mo_transmit_status == CAN_NODE_STATUS_SUCCESS)
{
status = CAN_NODE_MO_GetStatus(&CAN_NODE_0_LMO_01_Config);

if(status & XMC_CAN_MO_STATUS_TX_PENDING)
{
XMC_CAN_MO_ResetStatus(CAN_NODE_0_LMO_01_Config.mo_ptr,XMC_CAN_MO_RESET_STATUS_TX_PENDING);
}
}
}
}
0 Likes
0 Replies