Los microcontroladores, en particular los SMD (chips de montaje en superficie) generalmente se sueldan directamente a una PCB y, por lo general, no tienen los circuitos ni el espacio para un cable de programación externo a otra computadora. [ref Wiki]
Particularmente para trabajar con Arduino IDE , debe cargar un programa especial conocido como ‘Arduino bootloader’ que permite que la placa Arduino funcione de la manera que espera. (por ejemplo: este código permite al controlador identificar una conexión USB a través de FTDI, establece los bits de fusible para usar el reloj externo en lugar del interno y mucho más)
¿Qué es un gestor de arranque? Arduino – gestor de arranque
Se requiere una pieza de hardware separada conocida como programador para intermediar la comunicación entre un puerto de E / S de una computadora (generalmente USB para los programadores arduino) desde los encabezados ICSP.
- ¿Cuáles son los beneficios que obtendré al asistir a la conferencia / exposición International Embedded Systems?
- ¿Qué curso de B. Tech es mejor para paquetes y ofertas de trabajo, ECE con especialización en sistemas integrados o ECE con especialización en VLSI?
- ¿Cuál es el protocolo de prueba para productos de sistemas electrónicos / integrados?
- ¿Es bueno usar Buck Converter para suministrar microcontrolador?
- ¿Qué significa el microcontrolador de 8,16,32 bits desde el punto de vista de un programador?
Para grabar el gestor de arranque, deberá comprar un AVR-ISP (programador en el sistema), USBtinyISP o construir un programador paralelo. [ref: Arduino – Inicio]
Una ventaja que las placas Arduino pueden aprovechar es que puede usar otro Arduino para ser ese hardware para programar el gestor de arranque a través de los pines ICSP.
Más detalles sobre el uso de los pines aquí: Arduino – ArduinoISP
Estas imágenes muestran los Arduinos asignados al pin 10,11,12,13, etc. Si observa cuidadosamente la hoja de datos, encontrará que estos pines corresponden a MISO, MOSI, SCK, Reset, VCC, GND
- MISO (Master In Slave Out): la línea Slave para enviar datos al maestro,
- MOSI (Master Out Slave In): la línea maestra para enviar datos a los periféricos,
- SCK (Serial Clock): pulsos de reloj que sincronizan la transmisión de datos generada por el maestro
El otro uso principal previsto de estos pines es para la comunicación SPI
La interfaz periférica en serie (SPI) es un protocolo de datos en serie síncrono utilizado por microcontroladores para comunicarse rápidamente con uno o más dispositivos periféricos en distancias cortas. También se puede utilizar para la comunicación entre dos microcontroladores. -Arduino – Casa de nuevo
Para resumir todo esto, los dos usos principales de los pines ICSP son:
- Carga de arranque
- Comunicación SPI
Espero que esto ayude.