Pages: [1] 2   Go Down
Author Topic: Arduino MEGA et AVR Studio  (Read 1501 times)
0 Members and 1 Guest are viewing this topic.
VAR
Offline Offline
Newbie
*
Karma: 0
Posts: 41
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Bonsoir à tous,

J'essaie de configurer AVR Studio pour pouvoir l'utiliser avec ma petite Arduino MEGA, j'ai pour ce fait suivi le tuto
http://breizhmakers.over-blog.com/pages/tutoriel-developpement-arduino-avec-avr-studio-5-1-7556975.html
J'arrive à compiler blink sans erreur mais j'ai un problème quand il faut envoyer l'hex à la carte par l'intermédiaire de avrdude.
J'ai l'erreur suivante retrouvée assez souvent sur le web

Code:
avrdude: stk500_getsync(): not in sync: resp=0x00

Ou je suis surpris c'est que depuis l'IDE Arduino, j'envoie sans problème le code à la carte en cliquant sur "upload"
Par contre si je demande de l'uploader en appuyant sur la touche MAJ donc par l'intermédiaire du "programmer" la j'ai la même erreur

Code:
avrdude: Version 5.11, compiled on Sep  2 2011 at 19:38:36
         Copyright (c) 2000-2005 Brian Dean, http://www.bdmicro.com/
         Copyright (c) 2007-2009 Joerg Wunsch

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

         Using Port                    : \\.\COM6
         Using Programmer              : stk500v1
         Overriding Baud Rate          : 19200
avrdude: Send: 0 [30]   [20]
avrdude: Send: 0 [30]   [20]
avrdude: Send: 0 [30]   [20]
avrdude: Recv:
avrdude: stk500_getsync(): not in sync: resp=0x00


Une piste ?
Merci pour votre aide
++
Logged

-------
ARDUINO UNO
ARDUINO NANO
ARDUINO MEGA2560
mikroMMB

France
Offline Offline
Faraday Member
**
Karma: 55
Posts: 5347
Arduino Hacker
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

Bonjour,


Je vois déjà un probléme qui me saute au yeux :
Quote
Using Programmer : stk500v1
Les cartes de type MEGA ont un bootloader de type stk500 v2, d'ou (à mon avis) le probléme de synchronisation.

Ensuite cette vitesse de communication me semble fausse :
Quote
Overriding Baud Rate : 19200
Dans boards.txt je vois plutot 57600 bauds pour la carte mega classique.
Logged

Des news, des tuto et plein de bonne chose sur http://skyduino.wordpress.com !

VAR
Offline Offline
Newbie
*
Karma: 0
Posts: 41
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Bonsoir Skywodd

Voici les traces quand j'appuie directement sur l'upload et qui fonctionne.
Code:
C:\Program Files (x86)\arduino-1.0\hardware/tools/avr/bin/avrdude -CC:\Program Files (x86)\arduino-1.0\hardware/tools/avr/etc/avrdude.conf -v -v -v -v -patmega2560 -cstk500v2 -P\\.\COM6 -b115200 -D -Uflash:w:C:\Users\Philippe\AppData\Local\Temp\build6998711621266525584.tmp\Blink.cpp.hex:i

avrdude: Version 5.11, compiled on Sep  2 2011 at 19:38:36
         Copyright (c) 2000-2005 Brian Dean, http://www.bdmicro.com/
         Copyright (c) 2007-2009 Joerg Wunsch

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

         Using Port                    : \\.\COM6
         Using Programmer              : stk500v2
         Overriding Baud Rate          : 115200

Par contre quand j'utilise le upload par "programmer" ça plante avec ce code:

Code:
C:\Program Files (x86)\arduino-1.0\hardware/tools/avr/bin/avrdude -CC:\Program Files (x86)\arduino-1.0\hardware/tools/avr/etc/avrdude.conf -v -v -v -v -patmega2560 -cstk500v1 -P\\.\COM6 -b19200 -Uflash:w:C:\Users\Philippe\AppData\Local\Temp\build6998711621266525584.tmp\Blink.cpp.hex:i

avrdude: Version 5.11, compiled on Sep  2 2011 at 19:38:36
         Copyright (c) 2000-2005 Brian Dean, http://www.bdmicro.com/
         Copyright (c) 2007-2009 Joerg Wunsch

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

         Using Port                    : \\.\COM6
         Using Programmer              : stk500v1
         Overriding Baud Rate          : 19200
avrdude: Send: 0 [30]   [20]
avrdude: Send: 0 [30]   [20]
avrdude: Send: 0 [30]   [20]
avrdude: Recv:
avrdude: stk500_getsync(): not in sync: resp=0x00

Ou faut il changer les paramètres du "programmer" dans avrdude.conf ?

Merci une fois de plus pour ton aide
++
« Last Edit: May 21, 2012, 01:54:15 pm by oldchap » Logged

-------
ARDUINO UNO
ARDUINO NANO
ARDUINO MEGA2560
mikroMMB

France
Offline Offline
Faraday Member
**
Karma: 55
Posts: 5347
Arduino Hacker
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

Quote
         Using Port                    : \\.\COM6
         Using Programmer              : stk500v2
         Overriding Baud Rate          : 115200

Quote
         Using Port                    : \\.\COM6
         Using Programmer              : stk500v1 --> Mauvaise version du protocole
         Overriding Baud Rate          : 19200 --> Mauvaise vitesse de communication

Ou faut il changer les paramètres du "programmer" dans avrdude.conf ?
Quand tu click sur "upload using programmer" l'ide par du principe que tu utilise un programmateur d'AVR externe de type STK500 !
Tu peut choisir le type de programmateur dans tools -> programmers.

Ce que je ne comprend pas c'est pourquoi tu passe par l'option "using programmer" alors que tu utilise le bootloader arduino !?
"Using programmer" -> programmation SANS le bootloader en utilisant un programmateur d'AVR externe.
Logged

Des news, des tuto et plein de bonne chose sur http://skyduino.wordpress.com !

VAR
Offline Offline
Newbie
*
Karma: 0
Posts: 41
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

C était surtout pour savoir quels paramètres passer à avr studio ;-)
Mais si tu peux me donner la chaîne avrdude en utilisant le bootloader arduino pour avrstudio je suis preneur
++
Logged

-------
ARDUINO UNO
ARDUINO NANO
ARDUINO MEGA2560
mikroMMB

France
Offline Offline
Faraday Member
**
Karma: 55
Posts: 5347
Arduino Hacker
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

Mais si tu peux me donner la chaîne avrdude en utilisant le bootloader arduino pour avrstudio je suis preneur
Il suffit de regarder la console lors de l'upload, tu as toi même posté la solution à ta question smiley-wink

Code:
avrdude -C chemin\vers\avrdude.conf -p atmega2560 -c stk500v2 -P \\.\COM6 -b 115200 -D -U flash:w:ton\fichier\compiler.hex:i
Logged

Des news, des tuto et plein de bonne chose sur http://skyduino.wordpress.com !

VAR
Offline Offline
Newbie
*
Karma: 0
Posts: 41
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Suis entièrement d accord avec toi mais quand je rentre cette chaîne dans avr studio j ai la même erreur signalée dans mon premier post
J en perds mon latin :-)
Ne serait ce pas un problème de bootloader ?
Logged

-------
ARDUINO UNO
ARDUINO NANO
ARDUINO MEGA2560
mikroMMB

France
Offline Offline
Faraday Member
**
Karma: 55
Posts: 5347
Arduino Hacker
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

Suis entièrement d accord avec toi mais quand je rentre cette chaîne dans avr studio j ai la même erreur signalée dans mon premier post
J en perds mon latin :-)
Ne serait ce pas un problème de bootloader ?
Tu doit avoir une version de avrdude qui ne supporte pas le bootloader stk500 modifié arduino.
Essaye de remplacer ta toolchain avr studio par la toolchain winavr (derniére version).
Ou au pire test -c arduino (pas sur qu ça marche avec une mega)
Logged

Des news, des tuto et plein de bonne chose sur http://skyduino.wordpress.com !

VAR
Offline Offline
Newbie
*
Karma: 0
Posts: 41
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Mon avrdude est celui installé avec arduino 1.0
Ou puis je trouver la toolchain winavr (derniere version)
Merci pour ton aide
Logged

-------
ARDUINO UNO
ARDUINO NANO
ARDUINO MEGA2560
mikroMMB

France
Offline Offline
Faraday Member
**
Karma: 55
Posts: 5347
Arduino Hacker
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

http://sourceforge.net/projects/winavr/files/WinAVR/
Logged

Des news, des tuto et plein de bonne chose sur http://skyduino.wordpress.com !

Rennes
Offline Offline
Sr. Member
****
Karma: 1
Posts: 313
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

Bonjour,
Je suis l'auteur du tutoriel en question (enfin de sa traduction/adaptation).
J'ai moi aussi eu ces messages "not in sync" quand je n'utilisais pas le bon type de programmeur dans la ligne de commande passée à AVRDude.

Pour modifier la ligne de commande passée à AVRDude dans AVR Studio il faut aller dans tools/external tools et modifier la config pour AVRDude.
Un truc du genre devrait fonctionner (en adaptant les chemins):
-C D:\arduino\arduino-1.0\hardware\tools\avr\etc\avrdude.conf  -p atmega328p -c stk500v2 -P COM6 -b 115200 -D -U flash:w:"$(ProjectDir)Debug\$(ItemFileName).hex":i


Cette semaine je devrais ajouter au tutoriel la config du compilateur C (nécessaire pour les projets utilisant la librairie Wire, tel que mon projet actuel par exemple) ainsi que la config de putty pour avoir facilement un terminal série/loggueur.
Logged


Ile-de-France (92 sud), France
Offline Offline
Edison Member
*
Karma: 24
Posts: 2055
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

De mon coté je n'ai pas réussi à faire marcher une commande AVRdud dans les external tools
Les macros que j'ai utilisées : $(TargetPath) ou similaire (de mémoire je suis pas devant mon PC perso) n'étaient pas évaluées correctement.
Ca marche avec $(ProjectDir) ?

Y a t'il un moyen que ca suive le choix de "Build configuration" Debug ou Release ?
C'est pour cela que j'était partit sur $(TargetPath)

Pour l'instant mes 2 configs Build et Release sont idem au niveau optimisation et options de debug (désactivée) mais j'ai la macro DEBUG de définie dans la config "Debug" pour activer des traces dans mes codes.
Mais plus tard j'envisage bien de m'acheter un AVRdragon....

Est-ce que quelqu'un sait comment on peut rajouter des modèles de projet ?
Ca me gonfle d'avoir systématiquement à ajouter F_CPU, ARDUINO, les libs Arduino, etc...
Logged

Barbuduino: Arduino sur Breadboard & VinciDuino: Clone Leonardo // WR703: Mini-routeur hacké // LauchPad MSP430 et Stellaris // Panda II Arduino-like .NetMF sous VisualC#
RTFC: Read That F.....g Code / RTFD: Read That F.....g Doc / RTFDS: Read That F.....g DataSheet / RTFS: Read That F.....g Schematic / Wot da ya wanna D.I.Y. today ?

Rennes
Offline Offline
Sr. Member
****
Karma: 1
Posts: 313
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

De mon coté je n'ai pas réussi à faire marcher une commande AVRdud dans les external tools
Les macros que j'ai utilisées : $(TargetPath) ou similaire (de mémoire je suis pas devant mon PC perso) n'étaient pas évaluées correctement.
Ca marche avec $(ProjectDir) ?
Oui. Par contre il faut se positionner sur le fichier .cpp principal du projet sinon il ne calcule pas le bon nom de fichier .hex

Y a t'il un moyen que ca suive le choix de "Build configuration" Debug ou Release ?
C'est pour cela que j'était partit sur $(TargetPath)
Peut-être mais je n'ai pas essayé.
C'est mon premier projet Arduino alors je ne maitrise pas encore toutes les subtilités du truc (même si je pratique le C/C++ depuis longtemps).

Pour l'instant mes 2 configs Build et Release sont idem au niveau optimisation et options de debug (désactivée) mais j'ai la macro DEBUG de définie dans la config "Debug" pour activer des traces dans mes codes.
Mais plus tard j'envisage bien de m'acheter un AVRdragon....
Je fais aussi avec des #define
Ca me tenterais bien aussi un AVRDragon car j'ai du mal à me passer d'un débuggueur  smiley-mr-green

Est-ce que quelqu'un sait comment on peut rajouter des modèles de projet ?
Ca me gonfle d'avoir systématiquement à ajouter F_CPU, ARDUINO, les libs Arduino, etc...
Je viens d'essayer. Ca marche:
Menu File/Export Template.
Ca va exporter la solution courante comme un template et importer automatiquement ce template dans AVR Studio. Attention ça prend aussi tous les fichiers de la solution, donc faut préparer le truc pour avoir un squelette de programme Arduino par exemple.

Ensuite pour créer un nouveau projet depuis ce modèle: File/new project et choisir le template qu'on vient de créer. Y'à plus qu'à remplir les champs et on se retrouve avec un projet pré-configuré.

Logged


Ile-de-France (92 sud), France
Offline Offline
Edison Member
*
Karma: 24
Posts: 2055
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

Cool la génération du template!

J'ai aussi abandonné de faire des lib pour chacune des libs Arduino (SPI, SoftSerial, etc ...). Je n'ai fais que la Core.
Je copie direct les sources des autres libs dans le projets, vue qu'avec AVRstudio ca gère correctement les builds, j'ai déjà gagné le temps de recompiler 25 libs inutiles....

Logged

Barbuduino: Arduino sur Breadboard & VinciDuino: Clone Leonardo // WR703: Mini-routeur hacké // LauchPad MSP430 et Stellaris // Panda II Arduino-like .NetMF sous VisualC#
RTFC: Read That F.....g Code / RTFD: Read That F.....g Doc / RTFDS: Read That F.....g DataSheet / RTFS: Read That F.....g Schematic / Wot da ya wanna D.I.Y. today ?

Rennes
Offline Offline
Sr. Member
****
Karma: 1
Posts: 313
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

Cool la génération du template!

J'ai aussi abandonné de faire des lib pour chacune des libs Arduino (SPI, SoftSerial, etc ...). Je n'ai fais que la Core.
Je copie direct les sources des autres libs dans le projets, vue qu'avec AVRstudio ca gère correctement les builds, j'ai déjà gagné le temps de recompiler 25 libs inutiles....


Pareil. J'ai la lib core récupérée depuis l'IDE Arduino comme indiqué dans le tutoriel.
Pour les autres librairies je les ajoute à la solution via un lien (elle ne sont pas copiées mais juste référencées).
Ca marche pas mal comme ça.
J'utilise encore l'IDE Arduino pour faire des tests des librairies en particulier mais sinon je développe tout avec AVR Studio.
Logged


Pages: [1] 2   Go Up
Jump to: