Maxim Integrated High-Speed Microcontroller Users Guide: Network Microcontroller Supplement User Manual

Page 157

Advertising
background image

High-Speed Microcontroller User’s

Guide: Network Microcontroller

Supplement

157

Case 3:

Software-initiated reply. (Reply through same message center, using TIH as gating control.) CAN module wants to
receive an RFR in a receive-configured (T/R = 0) message center. When the data is received, the message center is

reconfigured to send data back to the remote request node. This relationship is not possible for message center 15.

1. Software sets T/R = 0, MSRDY = 1, and DTUP = 0 and awaits either data frame or RFR.

Note: Software does not change MTRQ = 0 from previous completed transmission.

2. CAN successfully receives RFR.

3. CAN forces EXTRQ = 1 and DTUP = 1.

4. MTRQ cannot be written to a 1 by the CAN when T/R = 0 and is left as MTRQ = 0.

5. CAN loads DTBYC from RFR and ID into arbitration registers.

6. CAN waits for software to read message center and to determine the fact that EXTRQ = 1.

7. Software disables message center and converts message center into transmit message center.

Software clears MSRDY = 0 to disable message center. Software leaves EXTRQ = 1.

Software forces message center to transmit mode, T/R = 1.

8. Software writes MSRDY = 0, DTUP = 0, and TIH = 1 in preparation to load data.

9. Software loads data into message center.

10. Software writes MSRDY = 1, MTRQ = 1, DTUP = 1, and TIH = 0 in same instruction.

Note: that software leaves EXTRQ = 1.

11. CAN automatically transmits data (as per RFR DTBYC) into the respective message center.

12. CAN clears EXTRQ = 0 and MTRQ = 0.

Case 4:

Software-initiated reply. (Reply through a different message center using TIH as a gating control.) CAN controller
wants to receive an RFR in a message center (denoted MC1) configured to receive data (T/R = 0) and to wait for

software to select another message center (denoted MC2) to send data back to remote request node.

1. Software sets T/R = 0, MSRDY = 1, and DTUP = 0 in MC1 and awaits either data frame or RFR.

Note: Software does not change MTRQ = 0 in MC1 from previously completed transmission.

2. CAN successfully receives RFR in MC1.

3. CAN forces EXTRQ = 1 and DTUP = 1 in MC1.

Note: MTRQ cannot be written to a 1 by the CAN when T/R = 0 and is left as MTRQ = 0.

4. CAN loads DTBYC from RFR and ID into arbitration registers in MC1.

5. CAN waits for software to read message center and determine the fact that EXTRQ = 1.

6. Software disables MC1 to transfer information to MC2.

Software clears MSRDY = 0 to disable MC1. Software leaves EXTRQ = 1.

Software clears MSRDY = 0 in MC2.

7. Software forces MC2 to transmit mode T/R = 1.

8. Software loads ID and DTBYC value from MC1 into ID and from MC2 into DTBYC.

9. Software writes MSRDY = 0, DTUP = 0, and TIH = 1 in MC2 in preparation to load data to MC2.

10. Software loads data into MC2.

11. Software writes MSRDY = 1, MTRQ = 1, EXTRQ = 0, DTUP = 1, and TIH = 0 in MC2 in same instruction. Note that

CAN has not set EXTRQ in MC2 and is not required to be set for transmission of data from MC2.

12. CAN automatically transmits data (as per RFR requested DTBYC) in MC2.

13. CAN clears MTRQ = 0 (leaving previous EXTRQ = 0 cleared).

14. Software sets T/R = 0, MSRDY = 1, EXTRQ = 0, and DTUP = 0 in MC1 and awaits either next RFR or date frame.

Note: MTRQ is still cleared in MC1, since MC1 has not been set to a transmit mode.

Maxim Integrated

Advertising