Programmation ATMEGA 2560

Bonjour à tous

Je suis actuellement en train d'essayer de programmer une puce ATMEGA 2560 à l'aide d'une arduino uno.
J'ai suivi ce tuto : https://www.instructables.com/id/ATMEGA2560-Standalone-Using-Arduino-UNO/
Cependant, lors du bootloading de l'ATMEGA j'ai le message d'erreur suivant :

avrdude: Version 6.3-20171130
         Copyright (c) 2000-2005 Brian Dean, http://www.bdmicro.com/
         Copyright (c) 2007-2014 Joerg Wunsch

         System wide configuration file is "C:\Program Files (x86)\Arduino\hardware\tools\avr/etc/avrdude.conf"

         Using Port                    : COM7
         Using Programmer              : arduino
         Overriding Baud Rate          : 19200
         AVR Part                      : ATmega2560
         Chip Erase delay              : 9000 us
         PAGEL                         : PD7
         BS2                           : PA0
         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    10     8    0 no       4096    8      0  9000  9000 0x00 0x00
           flash         65    10   256    0 yes    262144  256   1024  4500  4500 0x00 0x00
           lfuse          0     0     0    0 no          1    0      0  9000  9000 0x00 0x00
           hfuse          0     0     0    0 no          1    0      0  9000  9000 0x00 0x00
           efuse          0     0     0    0 no          1    0      0  9000  9000 0x00 0x00
           lock           0     0     0    0 no          1    0      0  9000  9000 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 : Arduino
         Description     : Arduino
         Hardware Version: 2
         Firmware Version: 1.18
         Topcard         : Unknown
         Vtarget         : 0.0 V
         Varef           : 0.0 V
         Oscillator      : Off
         SCK period      : 0.1 us

avrdude: AVR device initialized and ready to accept instructions

Reading | ################################################## | 100% 0.00s

avrdude: Device signature = 0x000000 (retrying)

Reading | ################################################## | 100% 0.01s

avrdude: Device signature = 0x000000 (retrying)

Erreur lors de la gravure de la séquence d'initialisation.
Reading | ################################################## | 100% 0.01s

avrdude: Device signature = 0x000000
avrdude: Yikes!  Invalid device signature.
         Double check connections and try again, or use -F to override
         this check.


avrdude done.  Thank you.

J'ai vérifié tous les branchments, ils sont bon.
Le problème pourrait-il venir du cristal 16 MHz qui serait endommagé ?

Sinon avez vous des techniques plus simples pour programme une ATMEGA ? Lors de mes recherches j'ai vu passer quelques infos sur les usbasp. Qu'en pensez-vous ?

Merci pour votre aide !

USBASP ou "Arduino as ISP" cela revient au même.
Si le 2560 ne répond pas, il faut vérifier:

  • l'alimentation du 2560, tous les Vcc et toutes les masses doivent être raccordés
  • le câblage correct du reset vers l'outil de programmation
  • le câblage correct du quartz et de ses 2 condensateurs. Par exemple, sur l'instructable, le quartz au bout de 2 fils à 3km du 2560 c'est pas bien. Le quartz doit être au plus près du 2560 avec les 2 condensateurs au plus près aussi.
    Met nous une petite photo de ton montage.

Ah c'est peut être le câblage du quartz qui a un problème. Je n'avait que des câbles assez long pour le relier à la puce c'est les 2 câbles noirs sur la photo.

En mettant des câbles plus courts cela pourrait donc fonctionner ?

Merci pour ta réponse rapide en tout cas

On dirait que le 2560 sur la carte possède déjà un quartz

Le quartz que tu vois en bas de la carte c'est celui qui sert pour un module CAN, il n'est pas relié directement a l'atmega

Un quartz 16MHz avec 30cm de fil ... :confused:
Pas top.

Etonnant : une carte avec un Mega 2560 dépourvu de quartz ? erreur de conception ??

et X3 , il sert à qui ?
X3.png
Même avis sur le lien Instructable donné plus haut : exemple de ce qu'il ne faut pas faire (forte pobabilité pour que l'oscillateur ne démarre pas ou oscille à une fréquence autre que celle attendue)

X3.png

Ce serait vraiment étonnant que l'atmega2560 n'ai pas un quartz sur la carte ou un résonateur céramique (dans ce cas c'est tout petit et peut être que tu ne l'as pas remarqué).
Grillé par al1fch

Effectivement le X3 est aussi un quartz 16MHz mais il n'a pas les condenstaeurs 22pF cités dans le tuto que j'ai suivi est-ce que c'est gênant ?
Je vais essayer de trouver des fils plus courts pour l'autre quartz

Il y a certainement des condensateurs, mais les condensateurs cms ne sont pas marqués (sauf exception).
Ou alors c'est un résonateur céramique qui n'a pas besoin de condensateurs externes.

Ne met pas de quartz externe, ça ne peut que perturber. Le quartz sur la carte suffit.

Si le X3 est en place au bon endroit et que tu en ajoutes un, cela ne risque pas de marcher.
As-tu essayé sans rien ajouter ?

Oui j'ai essayé sans ajouter de quartz et cela ne fonctionne pas non plus.