I tried (unsuccessfully):
Code: Select all
CAN0BTR0 = 0xC0; /* SJW=4,BR Prescaler= 1(8MHz CAN0 clk) */
CAN0BTR1 = 0x05; /* Set time quanta: tseg2 =1,tseg1=6 (8 Tq total including sync seg (=1)) */
Moderators: jsmcortina, muythaibxr
Code: Select all
CAN0BTR0 = 0xC0; /* SJW=4,BR Prescaler= 1(8MHz CAN0 clk) */
CAN0BTR1 = 0x05; /* Set time quanta: tseg2 =1,tseg1=6 (8 Tq total including sync seg (=1)) */
Code: Select all
CAN0BTR0 = 0x00; /* SJW=0,BR Prescaler= 1(8MHz CAN0 clk) */
CAN0BTR1 = 0x05; /* Set time quanta: tseg2 = 6(prop_seg + phase_seg2), tseg1=1 (8 Tq total including sync seg (=1)) */
Yup - tried that and got a message about the PDM Bootloader code being too old and must be updated (factory only) to use this functionality.jsmcortina wrote:Are you sure that a return to base is required?
The PDM User Manual says the following on page 27.
"CAN Bus Bitrate
The PDM can be configured to operate at CAN bit rates of 250Kbps, 500Kbps
or 1Mbps.
PDM manager includes a CAN bitrate conversion tool in the Tools > Options >
Communications menu"
James
Don't need compound...even the Arduino CANSpy can talk to the PDM at 1M. I've left the two on the bench and they've been chatting all afternoon!jsmcortina wrote:Note that the MS3 CAN receiving doesn't presently support the "Compound id" method.
James
Code: Select all
CAN0CTL1 = 0xC0; /* Set Can enable, use bus clock (100 MHz), clear rest */
CAN0BTR0 = 0x09; /* SJW=1,BR Prescaler= 5(100MHz CAN0 clk) */
CAN0BTR1 = 0x07; /* Set time quanta: tseg2 = 1(prop_seg + phase_seg2), tseg1=8 (10 Tq total including sync seg (=1)) */