Closed nifrz closed 6 days ago
Hello, Sorry for the late reply.
Were you able to solve this issue? Let me try to restate the problem and see if if I understand your issue correctly.
If you load your end application using a programmer, you are able to send and receive data correctly. If you load your end application using the bootloader/firmware update software, you are only able to send data from the device but not receive data.
Is that correct?
If that's correct then the first thing that I would look for is to see if the CAN peripheral module is being returned to the reset state before jumping to the application from the bootloader code. Looking at one of these examples, I see that we are disabling the timer interrupt before jumping to the application, but we aren't restoring the CAN module to a reset state. Depending on how the CAN module is re-initialized in the application, this could lead to issues. It sounds like if you can't receive messages, perhaps it is the filter registers.
Thanks, David
Hi guys,
I am currently in the process of implementing flashing via CAN for the
dsPIC33CK64MP502
. Basically, this works wonderfully. However, I have the following problem: After I have flashed the program via CAN, the dsPIC does not react to any incoming CAN messages afterwards. However, the main programme runs as usual and CAN messages are also sent by the dsPIC. However, when I manually send messages to the dsPIC, they are not read. If I flash the software without the bootloader application, i.e. manually not over CAN, both sending and receiving CAN messages works.Does anyone have an idea what this could be?
Cheers!