La mayoría (¿todos?) NXP LPC ARM y los microcontroladores Cortex tienen un cargador de arranque en serie incorporado. Deberá proporcionar las señales UART a estos chips en 3v3 (NO en los niveles RS232).
El LPC1343 también tiene un cargador de arranque USB incorporado: puede presentarse como una unidad, simplemente copie su firmware en él. Suena simple, pero un poco tedioso en la práctica si quieres hacer esto a menudo.
Para la mayoría de los microcontroladores, el software de cargador de arranque está disponible (en la mayoría de los casos, varias versiones). Usted (o alguien más) debe primero descargar este software al chip. En la mayoría de los casos (pero no en todos), tendrá que configurar su aplicación para que funcione con el gestor de arranque (no ocupe las mismas direcciones).
Una vez escribí un gestor de arranque llamado ZPL (cargador de cero pin) que se conectaba a su host solo por su pin de reinicio. Programó el intervalo entre los restablecimientos y descodificó el flujo de bits de este tiempo. La señal de reinicio fue proporcionada por una señal UART desde la PC. IIRC esta idea no era mía, leí (o al menos pensé que leí) en algún lugar sobre un cargador de arranque que usa solo el pin de reinicio. Una vez que sepa (o piense que sabe) que es posible que el reinicio sea solo un trabajo.