I am trying to invoke the BSL from an application for updating firmware and it's not working (i.e., the HID device for BSL VID - 0x2047 and PID - 0x0200 is not enumerating).
After reading slaa452b.pdf and going through posts on this forum, I am doing the following in the application to invoke the BSL:
USB_disconnect();
USB_disable();
SYSBSLC &= ~(SYSBSLPE | SYSBSLOFF);
__disable_interrupt(); /* Ensure no application interrupts occur while in BSL */
((void (*)())0x1000)();
I don't see the BSL HID device enumerating on the host PC. However, when I recycle power with the reset button pressed on the board, the BSL does enumerate with the correct VID/PID. When I look at 0x1000 from CCS memory window, I see 0xFF, 0x3F, 0xFF, 0x3F,....