2017-06-20 01:02 PM
I'm using the CAN Boot loader on the STM32F405xx chip and have an issue with the Erase command (0x43).
I am able to execute 0x00, 0x01, 0x02, 0x11, 0x21 & 0x31 as described in the Protocol Document, however when ID: 0x43 is attempted with Data: 0xFF (Global Erase) parameter or, for example, a 3 page erase with Data: 0x02, 0x00, 0x06 & 0x07
There is no ACK nor a NAK response.
Any ideas? (Boot loader version returned is 2 and ID is 0x0413)
2017-06-20 03:58 PM
It appears that the actual command behavior does not match the CAN Protocol document description. Does anyone know of a working example?
I'm using a RS-232/CAN adapter to communicate and only have trouble with the Erase command.
I have already implemented a Windows/RS-232 application that works with the UART Bootloader so I feel that the issue lies with my interpretation of the content of the CAN messages that have ID: 0x43.
I send the following:
ID: 0x43, DLC: 8, Data: 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07
And get back:
ID 0x43, DLC: 1, Data 0x79.
But then nothing else. The documentation leads me to believe that after all 8 of these sectors have been erased I should get an ACK, OR I should be getting an ACK as each of these 8 sectors is erased... OR ????
Now I'm pretty sure neither is correct.
2017-06-24 07:32 PM
Various issues were resolved to get the CAN erase commands to execute, but the erase commands do not work while the IAR debugger is running. Disconnecting the debugger allows the erase commands to work.
there is probably some warning about this in the IAR documentation... right?