[Solved] LPC824 re-invoking ISP

キャンセル
次の結果を表示 
表示  限定  | 次の代わりに検索 
もしかして: 

[Solved] LPC824 re-invoking ISP

1,162件の閲覧回数
lpcware
NXP Employee
NXP Employee
Content originally posted in LPCWare by ArneB on Thu Jan 15 08:16:05 MST 2015
For the archive and anyone, who might have troubles re-invoking the ISP mode on the LPC824:

Don't forget to disable your DMA controller, if you are executing the "re-invoke ISP" IAP command !

Otherwise the bootloader and the still active DMA controller are fighting for the incoming UART bytes, resulting in a non-working ISP mode.

This is the way I have done it:

typedef enum {READ_PART_ID           = 54, 
      READ_BOOT_CODE_VERSION = 55,
      REINVOKE_ISP           = 57, 
      READ_UID               = 58} IAP_COMMANDS_T;

void do_iap(IAP_COMMANDS_T iap_command) {
  command[0] = (uint32_t) iap_command;
  if(iap_command==REINVOKE_ISP) LPC_DMA->CTRL = 0; // Disable DMA controller
  __disable_irq();
  iap_entry(command, result);
  __enable_irq();
}
ラベル(1)
0 件の賞賛
返信
3 返答(返信)

1,052件の閲覧回数
lpcware
NXP Employee
NXP Employee
Content originally posted in LPCWare by nerd herd on Fri Jan 23 14:32:17 MST 2015
Hi larryvc,

This will be forwarded to the documentation team.
0 件の賞賛
返信

1,052件の閲覧回数
lpcware
NXP Employee
NXP Employee
Content originally posted in LPCWare by larryvc on Sat Jan 17 19:22:32 MST 2015
Thank you ArneB!

@nerd herd, that should probably be added to the UM too.
0 件の賞賛
返信

1,052件の閲覧回数
lpcware
NXP Employee
NXP Employee
Content originally posted in LPCWare by nerd herd on Fri Jan 16 10:45:55 MST 2015
Hi ArneB,

Thank you for publicly sharing your solution!
0 件の賞賛
返信