2012-03-20 09:18 AM
Hello.
I'm developing a time critical application with CAN bus. In order to satisfy the time requirements, I send every 5ms a CAN message at 125kbps. For debugging purpose, I have only one stm32f103c8t6 that send three consecutive messages with the above period. If I analyze the traffic on the CAN bus, I can see that the sending period is correct if the board is connected via JTAG (I'm using a Segger JLink and an ARM Crossworks 1.7 compiler/debugger), but if I disconnect the debugger, the sending period becomes longer in a random way (ie. sometimes a packet is not sent, sometimes yes). Could it be a correlation between JTAG and CAN peripherals? Thank you in advance! Alessandro Meliota2012-03-25 09:18 PM
Please check if your clock source is working fine. For instance, check if the crystal is oscillating fine or giving the correct frequency.
2012-03-26 07:30 AM
Sounds more like an initialization issue, JTAG attachment is NOT transparent, and may alter registers it needs.
Use the serial port for diagnostic output. Examine peripheral registers, compare and contrast between JTAG and non-JTAG configurations.2012-03-27 05:29 AM
one more possibility: insufficient power. The JTAG supplies the extra bit.
Erik