Solución:
En este caso, el programador es un dispositivo que programa un chip. A menudo se utilizan para programar microcontroladores, chips flash, chips EEPROM, chips PROM, etc.
Los dos tipos más básicos de programadores son el programador en circuito y el programador tradicional. Los programadores en circuito como este AVR ISP mk.II se conectan directamente al circuito que está programado.
El pequeño encabezado va al conector apropiado en la placa de circuito y una vez que se realiza la programación, se puede quitar del circuito. Además, la ventaja es que la memoria que se está programando no necesita ser eliminada del circuito.
Este se llama programador “bitbanging”. También es un programador en circuito, pero utiliza el puerto serie de una computadora (en este caso) para generar señales para programar el dispositivo. Son muy baratos de fabricar, pero no funcionan tan bien con chips USB a serie. El otro extremo del cable va al circuito que se está programando.
Y ahora tenemos los programadores clásicos. Requieren que el chip se retire de un circuito y se coloque en el propio programador. A veces también se les llama programadores en paralelo de alto voltaje.
Aquí tenemos un programador de bits que programa el chip en el zócalo. Es de fabricación casera y su principal ventaja es su bajo precio, pero por otro lado necesita un puerto paralelo en la computadora host para funcionar.
Aquí hay otro programador en el que se debe insertar el dispositivo.
Es común ver diferentes tipos de sockets en estos programadores porque las familias relacionadas de chips con interfaces de programación similares a menudo están disponibles en varios paquetes diferentes.
La principal diferencia entre esos dos tipos de programadores es que los programadores en circuito realmente necesitan un chip que esté configurado para aceptar programación. A veces debido a una mala programación o por diseño (por ejemplo, si no hay suficientes pines disponibles en el dispositivo, por lo que no se pueden dejar pines solo para programar, o no se espera que el firmware del dispositivo sea actualizable, o porque el dispositivo simplemente no admite programación en circuito) el dispositivo se deja en tal estado que no se puede programar en su propio circuito. En tales casos, debe eliminarse y colocarse en un programador externo. Por lo general, los programadores en circuito trabajan conectándose al dispositivo y usando un poco de firmware para descargar el nuevo firmware en el dispositivo. Por otro lado, los programadores clásicos pueden forzar la escritura directamente en la memoria del dispositivo para que pueda usarse incluso cuando no responde.
Entonces, para conectar esto a los chips BIOS. Las placas base suelen tener algún tipo de programador integrado en circuito que actualizará el chip BIOS. En caso de que el BIOS esté escrito incorrectamente en el chip del BIOS, el programador puede volverse inaccesible y es posible que se necesite un programador externo para actualizar el BIOS correcto en el chip.
El BIOS generalmente se almacena en un chip EEPROM, una memoria de solo lectura programable y borrable eléctricamente. En condiciones ideales, puede flashearlo con un poco de software. Si las cosas van espectacularmente mal (es decir, el sistema está bloqueado), tendrá que sacar el chip de la placa base, colocarlo en un programador, reescribir el chip con él y luego volver a colocarlo en el sistema.
Puede ser un pequeño programa que reprograma su BIOS. Esta programación puede implicar la reprogramación de las configuraciones que pueden haber sido previamente respaldadas, o simplemente cambiar la versión del BIOS en sí (pero programar los chips con un nuevo BIOS). En su caso, el “programador” puede ser un dispositivo de hardware utilizado para programar el chip (que probablemente estará en un IC {un circuito integrado}).
Por lo general, en estos días nos referimos a esto como “actualizar el BIOS”.