Missing Chip_IAP_ReinvokeISP() Bootloader selection

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

Missing Chip_IAP_ReinvokeISP() Bootloader selection

1,726 Views
lpcware
NXP Employee
NXP Employee
Content originally posted in LPCWare by R2D2 on Thu May 01 04:52:40 MST 2014
The original IAP 57 (Reinvoke ISP) function isn't able to set the desired bootloader  

/* Reinvoke ISP */
uint8_t Chip_IAP_ReinvokeISP()
{
uint32_t command[5], result[4];

command[0] = IAP_REINVOKE_ISP_CMD;
iap_entry(command, result);

return result[0];
}


LPC15 is able to select it  :bigsmile:

Sample:
/* IAP 57 Bootloader  */
#define BOOT_HARDWARE0
#define BOOT_UART1
#define BOOT_USB2
#define BOOT_CAN3


/* Reinvoke ISP Bootloader */
uint8_t Chip_IAP_ReinvokeISP(uint8_t bootloader)
{
uint32_t command[5], result[4];
command[0] = IAP_REINVOKE_ISP_CMD;
[color=#f00]command[1] = bootloader;[/color]
iap_entry(command, result);
return result[0];
}


Function call:
Chip_IAP_ReinvokeISP([color=#f00]BOOT_CAN[/color]);//invoke ISP CAN
  
Labels (1)
0 Kudos
Reply
4 Replies

1,557 Views
lpcware
NXP Employee
NXP Employee
Content originally posted in LPCWare by cgroen on Sun Oct 04 14:27:18 MST 2015
Thanks R2D2,
I did read that but when I applied positive thinking to it, I had hoped that the bootloader maybe looked and thought
"Hey, someone wants me to reinvoke the ISP loader and he has fiddled with the default/powerup SWM settings. I'd better not change them to my settings, but rather keep the new ones set"

But I guess the cup was half empty anyway  :((
0 Kudos
Reply

1,557 Views
lpcware
NXP Employee
NXP Employee
Content originally posted in LPCWare by R2D2 on Sun Oct 04 13:54:07 MST 2015

Quote: cgroen
...is it possible to configure the SWM prior to calling the reinvoke ISP command so that the bootloader will use the by me assigned TxD and RxD pins for the ISP ?



No  :((

LPC15xx Product data sheet, Chapter 8.3.1 ISP pin configuration:

Quote:
The boot code assigns two ISP pins for each package, which are probed when the part boots to determine whether or not to enter ISP mode. Once the ISP mode has been determined, [color=#f00]the boot loader configures the necessary serial pins for each package[/color].




0 Kudos
Reply

1,557 Views
lpcware
NXP Employee
NXP Employee
Content originally posted in LPCWare by cgroen on Sun Oct 04 07:50:59 MST 2015
Thanks for the correction to the code!

I'm using the LPC1549 and in a new design I will have to use the reinvoke ISP command to enable UART ISP.
I will not be using the "normal" ISP RxD and TxD pins (P0.14 and P0.15) for the UART communication, is it possible to configure the SWM prior to calling the reinvoke ISP command so that the bootloader will use the by me assigned TxD and RxD pins for the ISP ?
Or will the bootloader force P0.14 and P0.15 to be used as TxD and RxD for UART 0 ?

Ex:

Chip_SWM_MovablePortPinAssign(SWM_UART0_RXD_I, 0, 6);   // Use P0.6 as RxD for UART0
Chip_SWM_MovablePortPinAssign(SWM_UART0_TXD_O, 0, 7); // Use P0.7 as TxD for UART0
Chip_IAP_ReinvokeISP(1); // 1=UART, 2=USB, 3=CAN



0 Kudos
Reply

1,557 Views
lpcware
NXP Employee
NXP Employee
Content originally posted in LPCWare by cgroen on Sun Oct 04 07:17:43 MST 2015
double post...
0 Kudos
Reply