Usando un programador AVR para programar la versión TQFP de ATMEGA328P [cerrado]

1

Estoy intentando cargar el cargador de arranque Arduino y un programa en un ATMEGA328P-AU con un AVR programmer . He hecho esto antes de usar la placa Arduino UNO y la versión DIP de 28 pin del ATMEGA328P, sin embargo, estoy teniendo problemas al usar la versión TQFP.

Utilizando un Conector del adaptador TQFP , tengo simplemente Se utilizaron puentes y una placa para conectar los pines necesarios al programador AVR. Para mayor comodidad, proporcioné los esquemas del conector del programador AVR y el IC:

SimplementeconectéelprogramadorAVRalchipenelzócalodeladaptadordelasiguientemanera(conectorAVRalaizquierda,chipaladerecha)

1(MOSI)-Pin15

2(VCC)-Pines4,6,18

5(RST)-Pin29

6(GND)-Pines3,5,21

7(SCK)-Pin17

9(MISO)-Pin16

Sinembargo,alintentarcargarelcargadordearranqueenelchip,apareceelsiguienteerror:

avrdude:Version6.3,compiledonJan172017at12:00:53Copyright(c)2000-2005BrianDean,http://www.bdmicro.com/Copyright(c)2007-2014JoergWunschSystemwideconfigurationfileis"C:\Program Files (x86)\Arduino\hardware\tools\avr/etc/avrdude.conf"

         Using Port                    : usb
         Using Programmer              : usbtiny
avrdude: usbdev_open(): Found USBtinyISP, bus:device: bus-0:\.\libusb0-0001--0x1781-0x0c9f
         AVR Part                      : ATmega328P
         Chip Erase delay              : 9000 us
         PAGEL                         : PD7
         BS2                           : PC2
         RESET disposition             : dedicated
         RETRY pulse                   : SCK
         serial program mode           : yes
         parallel program mode         : yes
         Timeout                       : 200
         StabDelay                     : 100
         CmdexeDelay                   : 25
         SyncLoops                     : 32
         ByteDelay                     : 0
         PollIndex                     : 3
         PollValue                     : 0x53
         Memory Detail                 :

                                  Block Poll               Page                       Polled
           Memory Type Mode Delay Size  Indx Paged  Size   Size #Pages MinW  MaxW   ReadBack
           ----------- ---- ----- ----- ---- ------ ------ ---- ------ ----- ----- ---------
           eeprom        65    20     4    0 no       1024    4      0  3600  3600 0xff 0xff
           flash         65     6   128    0 yes     32768  128    256  4500  4500 0xff 0xff
           lfuse          0     0     0    0 no          1    0      0  4500  4500 0x00 0x00
           hfuse          0     0     0    0 no          1    0      0  4500  4500 0x00 0x00
           efuse          0     0     0    0 no          1    0      0  4500  4500 0x00 0x00
           lock           0     0     0    0 no          1    0      0  4500  4500 0x00 0x00
           calibration    0     0     0    0 no          1    0      0     0     0 0x00 0x00
           signature      0     0     0    0 no          3    0      0     0     0 0x00 0x00

         Programmer Type : USBtiny
         Description     : USBtiny simple USB programmer, http://www.ladyada.net/make/usbtinyisp/
avrdude: programmer operation not supported

avrdude: Using SCK period of 10 usec
avrdude: initialization failed, rc=-1
         Double check connections and try again, or use -F to override
         this check.


avrdude done.  Thank you.

Error while burning bootloader.

Claramente, estoy haciendo algo incorrectamente, y no dudaría si fue porque no es tan simple como conectar el programador AVR directamente al chip para programarlo.

Cualquier ayuda sería apreciada.

Gracias.

    
pregunta Gabe S.

2 respuestas

1

Primero que nada, revisa el cableado. Verifique que el encabezado del ISP se conecte a los pines que debería, y verifique que tenga el chip orientado correctamente en el zócalo. El USBtiny tiene un interruptor para alimentar el objetivo, así que asegúrese de que esté en la posición correcta. Si todo eso es correcto, hay un par de otras cosas que podrían causar ese error:

  1. El pin de reinicio carece de la protección ESD normal, por lo que es bastante fácil de freír. Siéntate a ti mismo y usa una esterilla ESD.

  2. Si alguna vez ha logrado programar los fusibles, es posible que el pin de reinicio se haya desactivado o que el dispositivo esté esperando un cristal externo. Si el pin de reinicio se ha deshabilitado, necesitará un programador especial de alto voltaje (12V) para recuperarlo.

respondido por el uhours
0

Suponiendo que su conexión es incorrecta, primero debe agregar una resistencia de pull-up al pin de reinicio; 1k-10k debería estar bien. en segundo lugar, es posible que deba configurar el fusible a una velocidad mayor antes de poder cargar el código en el chip. Eso es prácticamente todo lo que necesitas.

    
respondido por el Atmega 328

Lea otras preguntas en las etiquetas