Problème atmega328 sur ma carte arduino

Bonjour à tous !

J'ai reçu un atmega328 sans bootloader pour remplacer celui de ma carte arduino qui a des broches cassés.

J'ai donc graver le bootloader d'arduino sur mon nouveau atmega328p, sans aucun soucis le processus se termine.
J'enlève l'ancien atmega, je remplace par le nouveau "fraichement" graver avec le bootloader, et... rien ne ce passe..

Je n'ai pas le clignotement de la led "L" de la carte, et impossible de transférer un programme !

Par contre si j'utilise l'ancien atmega et j'utilise l'arduino comme programmateur isp pour ma nouvelle puce, la puce exécute correctement le programme !

Quelque solutions :slight_smile: ?

Merci d'avance.

Bonjour,
les fuses sont bien configurés ?

J'ai lu quelque part récemment que les ATMega328P bruts sont configurés par défaut pour utiliser l'oscillateur interne.
C'est probablement un pb de fuses comme le dit @trimarco232
Je ne sais pas trop si l'IDE est capable de positionner les fuses (j'ai essayé mais ça n'a pas semblé fonctionner), je le fais via AVRDude directement (bon j'ai presque brické un ATMega328P en me vautrant dans la valeur du low fuse mais c'est pas bien méchant et dans tous les cas pas bien coûteux).

Dans le fichier boards.txt de l'IDE Arduino la valeur du low fuse pour configure l'ATMega avec un quartz externe est 0xFF: param de AVRDude: -U lfuse:w:0xFF:m

trimarco232:
Bonjour,
les fuses sont bien configurés ?

Bonjour,

Comment savoir si les fuses sont bien configurés / savoir leurs valeur ?

Merci

Lire la documentation d'avrdude --> google avrdude.

Il y a des exemples qu'il suffit de recopier dans un terminal ou "une invite de commande" si tu es chez les fenêtres volantes.

Pour connaître la valeur à mettre :
soit :
http://www.engbedded.com/fusecalc
soit lire la datasheet du micro-contrôleur, le site "engbedded" n'est qu'une autre présentation de la datasheet.

Donc voilà, j'ai lu la documentation d'avrdude ainsi que les examples etc, merci à vous.

Je rentre cette commande dans le CMD : "avrdude -P COM7 -b 19200 -c avrisp -p m328p -v", Arduino as ISP, le nouveau proco branche.

Les lfuse sont bien à 0xFF.

Si tout va bien, pourquoi je peux pas l'utiliser sur ma carte arduino cet atmega :frowning:

La première fois tu es passé par l'IDE Arduino pour flasher le bootloader ?

B@tto:
La première fois tu es passé par l'IDE Arduino pour flasher le bootloader ?

Oui :slight_smile:

Bizarre en effet, t'as bien flashé un bootloader compatible avec ta carte Arduino? (me concernant j'achète mes ATmega328P avec le bootloader pré-chargé ça m'évite ce genre de soucis :wink: )

Puisque la programmation via ArduinoISP semble fonctionner, as-tu essayé de flasher le bootloader via ce moyen? (tel qu'expliqué ici: http://www.arduino.cc/en/Tutorial/ArduinoISP ) ?

mystère ...
et ça marche toujours avec l'ancien atmega ?

Alors la c'est louche ... Les fuses sont gravés lors du flash de bootloader depuis l'IDE.

Est-tu bien bien sûr que c'est un Atmega328P ?

Par contre tes fuses ne sont pas bons : ok high fuse 0xff mais les low et l'extended sont à 0x00.

http://forum.arduino.cc/index.php?topic=71580.0

Dans le bas de la copie d'écran donnée un peu plus haut, les fusibles sont à FF DE 05 ce qui correspond à une carte Uno avec optiboot (entre autres)

Et la signature 1E 95 0F correspond bien à un ATmega328P

Ah oui autant pour moi j'avais pas vu le bas de la copie ...

Quel bootloader as-tu programmé?

patg_:
Bizarre en effet, t'as bien flashé un bootloader compatible avec ta carte Arduino? (me concernant j'achète mes ATmega328P avec le bootloader pré-chargé ça m'évite ce genre de soucis :wink: )

Puisque la programmation via ArduinoISP semble fonctionner, as-tu essayé de flasher le bootloader via ce moyen? (tel qu'expliqué ici: http://www.arduino.cc/en/Tutorial/ArduinoISP ) ?

J'ai justement gravé le bootloader via l'arduino tant que programmateur ISP.

Finalement j'ai trouvé une utilité à cette atmega, je le programme via mon arduino pour le faire fonctionner en standalone plus tard dans un de mes projets :slight_smile:

Solution

Merci à tous d'avoir essayer de m'aider. La prochaine fois je prendrai un avec bootloader arduino pour le changer.

(Une dernière petite question H.S, comment reset l'atmega via le sketch, le reset via watchdog ne marche pas. J'ai pensé à un système avec une sortie digital mais je n'ai plus de pin dispo :frowning: )

fdufnews:
Quel bootloader as-tu programmé?

Le bootloader via l'IDE.

En sélectionnant quel type de carte ?

Il y a plus d'une vingtaine de cartes répertoriées dans l'IDE. Es-tu certain d'avoir choisi le bon type de carte lorsque tu as programmé le bootloader?

@fdufnews :

49 secondes trop tard :grinning:

La carte arduino Uno, quand même :slight_smile: