J'ai acheté un ATMEGA 328 qui est en duemilanove et je souhaiterais le reprogrammer en UNO.
Je possède une carte ADUINO UNO officielle.
Est-il possible de simplement mettre sur ma carte UNO le nouvel ATMEGA 32 et de lancer un burn en UNO depuis l'interface PC?
Le fait que l'ATMEGA possède déjà un bootloader rend-il la manip différente que s'il n'était sans aucun bootloader?
Je croyais qu'il suffisait de remplacer l'ATMEGA 328P de l'ARDUINO par l'ATMEGA 328P que je souhaitais bootloader...
A priori, ce n'est pas si simple...
Je ne trouve plus le schéma, mais il me semble bien me rappeler que l'on pouvait bootloader avec une carte ARDUINO UNO en mettant l'ATMEGA 328 P à bootloader sur une breadboard... Auriez-vous ce lien?
ojal, je crois, sans en être certain à 100%, qu'un problême subsiste avec les cartes UNO et qu'elles ne permettent pas encore de faire travailler la carte UNO en programmateur ISP.
Je ne sais plus si le responsable est le firmware du Mega8u (qui remplace le FTDI) ou le nouveau bootloader (Optiboot). le site Arduino rend plutot Optiboot responsable :
NOTE: Currently, you cannot use an Arduino Uno as an ISP programmer because the optiboot bootloader does not support this sketch. A revision for this is in progress.
Donc avec une Arduino UNO actuelle tu ne peux pas reprogrammer le bootloader de ton second Mega328.
Lorsque sortira (si ce n'est déjà fait) une version corrigée d'Optiboot tu ne pourra pas flasher cette nouvelle version. En somme pour faire quoi que ce soit au niveau des bootloaders, vu que tu as une UNO, il te faut un truc du genre USBasp..... ou une Duemilanove...
La seule chose faisable ...si cela est un jour utile c'est de changer le firmware du Mega8u2
Hé bien pas simple tout ça...
Je vois que je suis loin d'avoir tout compris :~
Je peux trouver ou les différences entre duemilanove et uno???
Ça occasionne quoi de mettre un ATMEGA 328P avec bootloader duemilanove sur une carte UNO???
Liste complète des différences, je ne sais pas si ça existe.
Pour ton pb je pense que les deux principales sont :
Interface USB <-> Rx-Tx
-Duemilanove et cartes précédentes : puce spécialisée FTDI232R
-UNO : Mega8u2 avec un firmware pour
Bootloader
UNO : nouveau (optiboot) plus rapide et surtout moins encombrant dans la mémoire flash
Si tu mets sur la carte UNO un Mega328 ayant le 'vieux' bootloader il suffit dans l'IDE de configurer en Board Duemilanove. Il n'est pas indispensable de changer de bootloader.
La seule conséquence est une perte d'un "bon" ko de mémoire flash vu la taille de l'ancien bootloader.
Un Mega328 'Duemilanove' fonctionne très bien chez moi sur une carte Uno à condition de dire à l'IDE : "tu as affaire à une Duemilanove". Un Mega8 avec son bon bootloader tourne sur une UNO en déclarant "board = NG older w/ATMega8. Cette discussion me fait penser à une chose que j"ai jamais eu l'idée d'essayer : une carte Uno avec un mega328 'Duemilanove' est peut être capable de jouer le rôle de programmateur ISP !! Si oui il faut garder les vieux bootloaders !!
Cette discussion me fait penser à une chose que j"ai jamais eu l'idée d'essayer : une carte Uno avec un mega328 'Duemilanove' est peut être capable de jouer le rôle de programmateur ISP !! Si oui il faut garder les vieux bootloaders !!
Oui regarde ça:
Bonjour darkduino,
Je ne comprends pas bien ta question "Sur l'arduino, il n'y a pas l'atmega, c'est bien ça?" ?
Je te détaille la méthode avec deux arduinos:
Sur l'arduino qui est "programmateur" tu mets le sketch "ArduinoISP" qui est dans le GUI arduino files\examples
sur l'image, l'arduino "programmateur" est celui du bas, l'arduino qui sert de support pour ton µC a programmer est en haut
Pour programmer un ATmega en 2009 ou en UNO il faudra que tu choisisses la cible dans le GUI arduino tools/board
Puis que tu lances Tools\burn bootloader\w Arduino as ISP
et comme je l'ai dit plus haut : (...) les fusibles sont programmés automatiquement avec cette méthode
Lionel
Re-bonjour,
en fait je ne comprends pas bien ton schéma.
Si le but est de programmer des ATmega 328, pourquoi ne fais tu pas tout simplement comme indiqué plus haut ???
Si tu veux en faire des arduinos standalone et que tu les programmes avec le bootloader Uno ou 2009, il te faut au minimum un quartz de 16MHz, deux condensateurs de 22pF (le quartz + les deux condos peuvent être remplacés par un résonateur céramique 16MHz) et une résistance
enfin, disons faire exactement comme ça http://arduino.cc/en/Tutorial/ArduinoToBreadboard
J'espère que ça fonctionne car je vient tous juste de commander un Atmega328 "vierge" + quartz + condenso afin de le programmer à partir de ma duemilanove !
Oui chicotore avec ta carte Duemilanove ça doit marcher !
Pas avec une UNO d'origine, du moins les modèles livrés jusqu'à maintenant, car un pb bloque le fonctionnement du sketch "ArduinoISP" .
Sur la page dont tu mets le lien il est bien écrit :
Note that these techniques only work with the Arduino Duemilanove w/ an ATmega328, not the Arduino Uno
Si mes souvenirs sont bons le bootloader optiboot implanté sur ces cartes se 'reveille' quand on veut exécuter ArduinoISP sur le Mega328 de la carte empêchant toute programmation (sketch ou bootloader) du second Mega328. A mon avis si on a encore des Mega328 avec le bootloader précédent (Duemilanove ou antérieur) il ne faut pas se presser de flasher Optiboot et attendre un peu que le bug soit corrigé.
Quand j'aurai le temps je testerai le sketch ArduinoISP sur une UNO en remplaçant son micro par un autre possédant le bootloader 'Duemilanove'. Si le responsable est bien Optiboot alors le sktech devrait tourner.