¿Cuál es el problema con un cargador de arranque?

2

Planeo comprar un chip ATmega328 de Atmel, colocarlo en mi placa Arduino, programarlo, separarlo más tarde y luego soldarlo en una PCB.

¿Puedo comprar el chip y programarlo en la placa Arduino, o es necesario que tenga un cargador de arranque Arduino?

    
pregunta IronApe

2 respuestas

4

No, no puedes "... solo compra el chip y programalo en la placa Arduino"

A menos que compre un ATmega328 preprogramado, necesitará un programador serial en circuito.

Atmel vende el AVRISP mkII . Solo como guía, puede pagar más de 30 libras esterlinas por uno de esos.

Hay una opción de menor costo basada en el código abierto USBtiny

Ladyada

se ha mejorado y convertido en un kit

Un amigo compró uno de un sitio web de mercado conocido y funciona bien. Acabo de hacer un chequeo rápido y lo encontré listo por menos de £ 5 sin el estuche de plástico. YMMV

También hay un proyecto Ladyada DIY-shield para convertir el Arduino en un programador

Hay varios proyectos que son incluso más simples, por ejemplo, Mega-ISP utilizando el tablero como el zócalo para sostener el ATmega no programado

Te recomendaría cualquiera

  1. coloque un encabezado ISP de 2x3 pines en su nueva PCB, conéctelo al chip correctamente, de modo que se pueda utilizar para programar el chip cuando esté a bordo; esto implica que RESET y SPI pueden usarse sin causar el sistema integrado para romper o comportarse mal, o
  2. no suelde el chip en la placa, sino que use un zócalo, por lo que que puedes extraerlo

Entonces será sencillo reprogramar el chip si encuentra un error en el código, o si necesita hacer un cambio; Ambos son muy comunes. De lo contrario será difícil arreglarlo.

Resumen
Si ya tiene un Arduino y una placa de pruebas, entonces tiene todo lo que necesita para programar un ATmega. No necesita comprar un Programador Serial en Circuito (ISP), y no pondrá el ATmega no programado en el Arduino. Sin embargo, si va a hacer esto mucho, un ISP es una inversión razonable.

    
respondido por el gbulmer
3

Sí.

Es decir, es posible programarlo sin el cargador de arranque Arduino, pero no a través del puerto serie. Sin el cargador de arranque, debe usar el ISP para cargar código y datos en la memoria flash y la EEPROM; una vez que el cargador de arranque está en su lugar, es posible utilizar la conexión en serie en su lugar.

Tenga en cuenta que los fusibles y los bits de bloqueo no pueden programarse a través del puerto serie sino solo a través de ISP, por lo que probablemente querrá invertir en un programador de ISP. / p>     

respondido por el Ignacio Vazquez-Abrams

Lea otras preguntas en las etiquetas