This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

RM44L920: CAN IF1/IF2 register reset

Part Number: RM44L920
Other Parts Discussed in Thread: HALCOGEN

I am using multiple CAN message box for transmitting only and by external loopback method. how does we can use IF1/IF2 registers to manipulate the DATA.after sending the first CAN frame IF1DATA A & IF2 DATA B are not automatically resetting to the new values, Please help!

  • Hi Karthik,

    If you are using CAN driver generated by HALCoGen then you no need care about interface registers(IF1/IF2). Here the driver will use IF1 register for canTransmit and IF2 register for canGetData.

    i) First you have to do the message box configurations in HALCoGen

    If you see above image i configured Message Box-1 and 2 for transmission with required ID's and similarly i configured 3 and 4 for reception.

    ii) Once you configured message boxes you just need to give message box number and data buffer to the canTransmit function. As shown below.

    This transmit function uses IF1 register and copies the data to the corresponding transmit message object based on message box number.

    iii) Similarly, on receiving side have to give message object number and rx buffer starting address to the canGetData function. And this function will copies the newly received message of corresponding message box to the IF2 and from IF2 it again copies into the rx buffer we are passing.

    So, your required data will be in rx buffer.

    --

    Thanks & regards,
    Jagadish.