Jump to content

Search the Community

Showing results for tags 'canbus'.

  • Search By Tags

    Type tags separated by commas.
  • Search By Author

Content Type


  • News
    • New Users Introduction
    • Announcements
  • Digilent Technical Forums
    • FPGA
    • Test and Measurement
    • Measurement Computing (MCC)
    • Add-on Boards
    • Digilent Microcontroller Boards
    • Non-Digilent Microcontrollers
    • LabVIEW
    • FRC
    • Other
  • General Discussion
    • Project Vault
    • Learn
    • Suggestions & Feedback
    • Buy, Sell, Trade
    • Sales Questions
    • Off Topic
    • Educators
    • Technical Based Off-Topic Discussions
    • Archived

Find results in...

Find results that contain...

Date Created

  • Start


Last Updated

  • Start


Filter by number of...


  • Start





Website URL







Found 2 results

  1. I am going through UG585 document and trying to understand the formulas for the can bus baud rate. I am using the example from SDK (xcanps_intr_example). I am trying to understand how they are arriving at those numbers. Ultimately I would like to set up the baud rate at 1 megabit per second. /* * The Baud Rate Prescaler Register (BRPR) and Bit Timing Register (BTR) * are setup such that CAN baud rate equals 40Kbps, assuming that the * the CAN clock is 24MHz. The user needs to modify these values based on * the desired baud rate and the CAN clock frequency. For more information * see the CAN 2.0A, CAN 2.0B, ISO 11898-1 specifications. */ /* * Timing parameters to be set in the Bit Timing Register (BTR). * These values are for a 40 Kbps baudrate assuming the CAN input clock * frequency is 24 MHz. */ #define TEST_BTR_SYNCJUMPWIDTH 3 #define TEST_BTR_SECOND_TIMESEGMENT 2 #define TEST_BTR_FIRST_TIMESEGMENT 15 /* * The Baud rate Prescalar value in the Baud Rate Prescaler Register * needs to be set based on the input clock frequency to the CAN core and * the desired CAN baud rate. * This value is for a 40 Kbps baudrate assuming the CAN input clock frequency * is 24 MHz. */ #define TEST_BRPR_BAUD_PRESCALAR 29 Formulas from the UG585: tTQ_CLK = tCAN_REF_CLK * (can.BRPR[BRP] + 1) freqTQ_CLK = freqCAN_REF_CLK / (can.BRPR[BRP] + 1) tSYNC_SEGMENT = 1 * tTQ_CLK tTIME_SEGMENT1 = tTQ_CLK * (can.BTR[TS1] + 1) tTIME_SEGMENT2 = tTQ_CLK * (can.BTR[TS2] + 1) tBIT_RATE = tSYNC_SEGMENT + tTIME_SEGMENT1 + tTIME_SEGMENT2 freqBIT_RATE = freqCAN_REF_CLK / ((can.BRPR[BRP] + 1) * (3 + can.BTR[TS1] + can.BTR[TS2])) How are they deriving those numbers? How do I choose BRP? How are they getting TEST_BTR_SYNCJUMPWIDTH, TEST_BTR_SECOND_TIMESEGMENT and TEST_BTR_FIRST_TIMESEGMENT.
  2. opethmc

    DMC60c CAN Bus

    I am looking at the DMC60c CAN protocol guide and also the software API reference manual. What are the API numbers needed in the CAN message to communicate with the DMC60c. For example if I wanted to send a voltage command using the function driveVoltage, what should go in the API field (Byte 1) of the message identifier? Thanks, matt
  • Create New...