Error al cargar el archivo hex en AVR uC

3

Estoy intentando subir un archivo hexadecimal a un ATtiny85 desde Ubuntu ejecutando estos comandos:

avr-gcc -mmcu=attiny85 -Wall -Os -o src.elf main.cpp
avr-objcopy -j .text -j .data -O ihex src.elf src.hex
avrdude -p t85 -c avrispmkII -e -U flash:w:src.hex

Recibo este error:

avrdude: ser_open(): can't set attributes for device "/dev/ttyS0": Inappropriate ioctl for device

Intenté usar diferentes puertos USB, pero eso no ayudó. ¿Cómo puedo resolver este problema?

    
pregunta user151324

1 respuesta

3

Una breve reseña del chat.

Primero asegúrese de que el módulo del controlador esté cargado, al parecer, esto no sucede automáticamente:

Opción 1: Al vuelo: modprobe cdc-acm

Opción 2: para cargar el módulo en el momento del arranque:

  • sudo bash -c 'echo hoi >> /etc/modules Observe que el doble >> es importante.
  • reiniciar
  • compruebe si el módulo está cargado: lsmod | grep cdc-acm && echo success || echo failed

Debería poder programar el dispositivo usando:

sudo avrdude -v -p t85 -c avrispmkII -P usb -U flash:w:src.hex

Consulte esta pregunta para obtener más información: enlace

No estoy seguro de cuál es el motivo del mensaje de error que informó en este momento:

avrdude: stk500v2_command(): command failed
avrdude: stk500v2_program_enable(): bad AVRISPmkII connection status: Target not detected
avrdude: initialization failed, rc=-1 

Su lista de tareas pendientes:

  1. Cargue automáticamente el módulo cdc-acm = > Descrito anteriormente.
  2. Averigüe lo que está mal con sus reglas udev , por lo que no tiene que usar sudo para programar = > revisa enlace para eso.
  3. Averigua por qué el programador no responde. enlace es el lugar correcto. Una imagen de su configuración ayudará. Como es un error diferente del que comenzó, creo que se justifica una nueva pregunta.
respondido por el jippie

Lea otras preguntas en las etiquetas