Discusiones sobre Productos NI

cancelar
Mostrando los resultados de 
Buscar en lugar de 
Quiere decir: 

usar un arduino como programador avr (use an Arduino as an AVR programmer)

¡Resuelto!
Ir a solución

buen dia 

estoy buscando la manera de usar un arduino uno como un programador avr,quiero hacer que mediante mi programa labview en cierto paso me programe una tarejeta sin necesidad de abrir el compilador o el  programador etc,esto lo quiero hacer en un proyecto,e visto que usan los programadores avr en pruebas de ICT(in circuit test) o  FUNCIONALES,que en cierto paso de las pruebas programan un microcontrolador sin necesidad de abrir el compilador o programador.alguien que me explique como o un ejemplo,e buscado y no e encontrado nada

 

 

 

0 kudos
Mensaje 1 de 3
6.220 Vistas
Solución
Aceptado por el autor del tema r2d2_90

Supongo que un foro de arduino será más adecuado que este de labview para contestar a tu pregunta, pero te comento algunas cosas:

 

Un programa se puede descargar a arduino de dos formas:

  • después de un reset ejecuta un bootloader que lee de la uart un programa y lo escribe en flash. Es la típica programación cuando le das a ejecutar desde el entorno de programación.
  • mediante ICSP, donde escribes directamente la flash sin necesidad de bootloader, pero necesitas un programador externo. Es el equivalente a los segger de ARM o los pickit de microchip, o los programadores en líneas de montaje.

Una alternativa para evitar tener un programador externo es programar un arduino para que haga lo mismo, que es lo que describes. El código lo tienes en el entorno de arduino cuando le das a File > Examples > ArduinoISP. Tienes el código fuente, así que si quieres que haga algo específico cuando le mandes órdenes, lo puedes introducir ahí. Luego ese programa lo cargas de forma normal en tu arduino uno y te puedes comunicar con él, a partir de ese momento podrá ser tu programador. La conexión física de cables, si no recuerdo mal, era conectar el spi de una placa a la otra, que son las líneas que tienes en el conector trasero, y el CS del programador al reset de la placa a programar, y la alimentación si el receptor no tiene. Para usar este programador sobre otra placa (si no has modificado nada), sólo tienes que seleccionar como programador Arduino ISP en tools > programmer, y luego programar en file > upload using programmer. Esta última opción no es más que una llamada a avrdude, así que si no quieres usar el entorno de arduino, puedes hacerte un programa en LV o un fichero bat para llamar a avrdude usando stk500v1, 19200 baudios y el puerto com que quieras usar.

 

Todo lo anterior lo comento suponiendo que lo que quieres es programar los atmega de fábrica, es decir, que no tengan bootloader preprogramado. Porque si ya tienes el bootloader en el micro, puedes ahorrarte la placa de programación y la conexión de 5 o 6 cables, y en lugar de lo anterior se puede usar el avrdude para que mande tu fichero hex al bootloader a través del usb.

 

 

0 kudos
Mensaje 2 de 3
6.193 Vistas
Solución
Aceptado por el autor del tema r2d2_90

gracias intentare con avrdude y con System Exec que es "creo" lo que andaba buscando,e intentare ir a los foros donde corresponde preguntar muchas gracias

0 kudos
Mensaje 3 de 3
6.120 Vistas