Content originally posted in LPCWare by alt_arw on Fri Sep 11 11:35:11 MST 2015
We have a design that uses the LPC1517 and we'd like to be able to use the C_CAN ISP for firmware upgrades. I've been experimenting with the SDO communication and cannot get the "Write to RAM" function to work. It's always giving me the SDO abort code 0x0601000, which is "Unsupported access to an object". I've verified that we can get the device into ISP mode and can get many of the SDO functions to work without abort codes. In looking at the memory map from the user manual for 15xx, I believe that address 0x02001000 should be a RAM address for the 1517 outside the area used by the boot loader. We thought it might be related to the CRP, but we verified that the CRP register (0x2FC) is set so CRP is not enabled. Plus, if CRP were the issue, I would expect to receive the abort code for CODE_READ_PROTECTION_ENABLED. Below is the sequence of CAN messages that are being sent to the device along with the response. Any insight into what I'm doing wrong or why it's setup wrong would be appreciated.
Read Device Type
TX: 67d 40 0 10 0 0 0 0 0
RX: 5fd 43 0 10 0 4c 50 43 31
Unlock
TX: 67d 2b 0 50 0 5a 5a 0 0
RX: 5fd 60 0 50 0 0 0 0 0
Blank Check
TX: 67d 2b 40 50 1 0 1 0 0
RX: 5fd 80 40 50 1 8 0 0 f (abort code = 0xF00008 - SECTOR_NOT_BLANK)
Write Address
TX: 67d 23 15 50 0 0 10 0 2
RX: 5fd 60 15 50 0 0 0 0 0
Write Address
TX: 67d 23 50 1f 1 a5 5a a5 5a
RX: 5fd 80 50 1f 1 0 0 1 6 (abort code = 0x6010000 - Unsupported access to an object WHY???)
Set Read Address
TX: 67d 23 10 50 0 0 10 0 2
RX: 5fd 60 10 50 0 0 0 0 0