JTAG, SWD, EDBG, ICSP, términos ISP

1

JTAG, SWD, EDBG, ICSP, ISP.

¿Puede alguien simplemente explicar sus diferencias?

Por ejemplo, si el depurador EDBG TAMBIÉN puede programar un flash, ¿por qué las placas Arduino tienen ISP y EDBG?

enlace

Y en la imagen, ¿por qué escribieron "SWD (EDBG)"?

¿Cuál es el punto de escribir EDBG y escribirlo en paréntesis?

¿Por qué ISP e ICSP tienen el mismo significado? ¿Por qué no solo una abreviatura?

Y finalmente, ¿cuál es la relación de JTAG con todo esto?

    
pregunta T. Rex

2 respuestas

1

Los fabricantes de chips tienen diferentes nombres para las interfaces de programación que básicamente todos hacen lo mismo:

  • ISP - interfaz de programación para AVR Atmel (ahora Microchip). Como SPI (MISO, MOSI, SCK, reinicio). Se puede utilizar para la programación y depuración flash.
  • PDI: una interfaz de programación más nueva para los AVR Atmel (por ejemplo, Xmega). Utiliza dos hilos (datos y reloj). Puede hacer lo mismo que ISP.
  • DebugWire: otra interfaz de Atmel (esta usa solo un cable)
  • ICSP: interfaz de programación para la línea PIC de microchip de MCU
  • SWD - Serial Wire Debug - interfaz de programación para MCU con núcleos ARM Cortex-M (utiliza dos cables: datos y reloj)
  • JTAG: término muy genérico, interfaz tipo SPI utilizada para exploración de límites , también se puede usar para programación / depuración MCU (casi todos los proveedores tienen su propio protocolo, por lo que Cortex-M JTAG no es lo mismo que AVR JTAG o Blackfin JTAG)
  • Spy-Bi-Wire: otra interfaz de programación de dos hilos, esta es para las MCU MSP430 de TI

Finalmente, EDBG dice que se explica aquí es muy probablemente un firmware de depuración que puede ejecutarse en una MCU (con USB) y depurar otra MCU (de modo que en realidad hay dos MCU en una placa de desarrollo). Como puede ver en el documento vinculado, admite múltiples estándares de interfaz de programación Atmel.

    
respondido por el filo
0
  

Y finalmente, ¿cuál es la relación de JTAG con todo esto?

Las placas Arduino basadas en Atmega328P no admiten JTAG. Necesitas moverte a los chips más grandes ('1284P, 2560 por ejemplo) para eso.

    
respondido por el CrossRoads

Lea otras preguntas en las etiquetas