Explicación detallada de las diferencias entre los tres métodos de programación de microcontroladores ISP, IAP e ICP
Las diferencias entre los métodos de programación de microcontroladores ISP, IAP e ICP
Todos los que juegan con microcontroladores deberían haber oído hablar de estas palabras. Nunca he podido descubrir la diferencia entre ellos. Después de verificar la información de hoy, la resumí de la siguiente manera.
ISP: En Programación de Sistemas, en programación de sistemas
IAP: En Programación de Aplicaciones, en programación de aplicaciones
ICP: En Programación de Circuitos, en programación de circuitos p>
p>
ISP significa que la programación se puede realizar a nivel de placa, es decir, no es necesario desmontar el chip y todo el programa se escribe, generalmente a través de la línea de interfaz ISP.
Aunque IAP también se programa a nivel de placa, se programa por sí mismo y se programa en la aplicación, es decir, solo puede cambiar una determinada parte sin afectar otras partes del sistema. programa de interfaz Está escrito por mí mismo para que se puedan realizar actualizaciones remotas sin afectar la aplicación.
Usemos una analogía:
1. El ISP derriba la casa y construye una nueva. ¡Por supuesto, nadie puede vivir en ella hasta que esté construida!
2. IAP realizará algunas decoraciones en la casa construida. ¡Por supuesto, la gente puede seguir viviendo en ella!
ICP es programación en circuito, que es el método de programación de chips LPC. Es equivalente al ISP de ATMEL, y el ISP de LPC es equivalente al IAP de ATMEL.
La diferencia entre ISP e IAP
ISP: en programación de sistemas, en programación de sistemas
IAP: en aplicacionesEn programación en programación de aplicaciones
Pero, ¿cuál es la diferencia entre los dos métodos de operación, resultados y escenarios de aplicación?
Qué es ISP:
Utilice un escritor para grabar el código en él. Sin embargo, el chip puede. estar en el tablero de destino, no es necesario sacarlo. Al diseñar el tablero de destino, la interfaz está diseñada en él, por lo que se llama "programación en el sistema", es decir, no es necesario salir del sistema. ;
Qué es IAP:
En la aplicación Para la programación, el propio chip (o mediante un chip periférico) puede escribir código a través de una serie de operaciones, por ejemplo, un microcontrolador que lo admita. Iap se divide en 3 áreas de programa, 1 es el área del programa de inicio, 2 es el área del programa en ejecución y 3 es el área del programa en ejecución. Como área de descarga, el chip recibe el comando de descarga a través del puerto serie y ingresa al área de inicio. para ejecutar el programa de inicio y descarga el contenido del nuevo código en el área de descarga debajo del programa de inicio. Una vez completada y verificada la descarga, el contenido del área de descarga se copia al área 2 y ejecuta Restablecer el programa, y se completa el IAP;
Ocasiones de aplicación:
1. La actualización del programa ISP debe resolverse en el sitio, pero lo mejor es que no es necesario desmontar la máquina;
>2. Si IAP tiene un sistema de administración de red, todo se puede hacer descargándolo a través de la administración de red y la gente no tiene que andar corriendo.
Esta puede ser su ventaja o aplicación
La programación en línea actualmente existe dos métodos de implementación: programación en el sistema (ISP) y programación en la aplicación (IAP). ISP generalmente programa la memoria Flash dentro del microcontrolador a través de una interfaz de programación en serie dedicada del microcontrolador, mientras que la tecnología IAP asigna estructuralmente la memoria Flash en dos bancos de memoria. Cuando se ejecuta un programa de usuario en un banco de memoria, se puede reprogramar otro banco y. Luego, el control se transfiere de un banco a otro. La implementación de ISP generalmente requiere pocos circuitos externos para ayudar a la implementación, mientras que la implementación de IAP es más flexible. Por lo general, el puerto serie del microcontrolador se puede conectar al puerto RS232 de la computadora y la memoria interna se puede programar a través de un. programa de firmware especialmente diseñado. ISP e IAP son muy similares. No necesitan sacar el chip de la placa y pueden lograr el propósito de actualizar la nueva versión utilizando la interfaz de programación PC-MCU (JTAG, puerto serie, par trenzado, SPI, etc. ).
Internamente, la MCU primero ejecuta un fragmento de código de arranque independiente (este código de arranque generalmente viene preestablecido de fábrica o programado usando un programador, generalmente solo 1k o 4k. SST generalmente ocupa un bloque independiente. Philips generalmente deja que BootROM La dirección se superponga con otra Flash para lograr un efecto oculto), Boot es responsable de controlar el código para borrar la memoria del programa y programar la memoria del programa (o el código de ejecución proporcionado externamente al procesador), y luego comunicarse con la computadora PC a través de algún tipo de método de comunicación (para por ejemplo, puerto de red ether), programe un archivo de código binario ejecutable de MCU especificado por el usuario compilado en la PC en la memoria de programa de la MCU.
La mayor diferencia entre ISP e IAP es quién lo activa.
El ISP tiene 4 métodos de activación:
1. Circuito de hardware externo: por ejemplo, VDD permanece alto y proporciona RST 3 pulsos consecutivos
2. bit: como ISPEN, cuando es 0, el puntero de la PC comienza a ejecutarse desde 0000H, cuando es 1, la posición del "código ISP" se calcula a través del "vector de arranque". Este bit de estado se detectará después de cada reinicio;
3. La señal del carácter de control de cancelación activa un reinicio del chip: la señal del carácter de control de cancelación se refiere a un voltaje bajo de una trama larga en el pin receptor de la serie asíncrona. Nivel de puerto, la longitud de una trama aquí está relacionada con el modo de funcionamiento del puerto serie asíncrono.
4. Llamar directamente al ISP: Los programas de usuario también pueden llamarlo, pero es muy peligroso.
El propósito de los cuatro métodos es el mismo: ingresar a la subrutina ISP. Por ejemplo, la subrutina ISP enviada por Philips está en 1E00H-1FFFH, siempre que se pueda guiar el puntero de la PC para que apunte. 1E00H.
El propósito de ingresar el código ISP es: ingresar a BootROM.
La activación de IAP es relativamente simple y no existe un activador externo. A través de algunos bits de indicación (SST es SC0/SC1, SFCF; Philips es una subrutina IAP, almacenada en el espacio de direcciones FF00H ~ FFFFH), se logra el propósito de iniciar en BootROM.
Diferentes caminos conducen al mismo objetivo. El código de arranque que reside en el BootROM ingresado por el ISP y el IAP es el objetivo final.
El último: modo de programación paralela. No es necesario BootROM. Puede configurar directamente varios pines del chip para permitir que el chip reconozca comandos (como: borrar, escribir, verificar, etc.) Transmitiendo la dirección y los datos desde el puerto P. escríbalo en Flash
Uso Para el IAP de LPC2000, usted mismo asigna el espacio FLASH, especifica un BLOQUE para almacenar sus datos y luego realiza operaciones de escritura a través del IAP. Después de cada arranque, lea sus datos de este BLOQUE.