De l'Arduino au langage C standard avec AVR Studio - Page 11
Discussion fermée
Page 11 sur 21 PremièrePremière 11 DernièreDernière
Affichage des résultats 301 à 330 sur 614

De l'Arduino au langage C standard avec AVR Studio



  1. #301
    invitedca01a58

    Re : De l'Arduino au langage C standard avec AVR Studio


    ------

    Pour la mise en route, du moment que Studio6.2 est installé, il suffit de brancher l'Atmel-ICE dans un USB. L'appareil est reconnu et le driver est installé automatiquement (je suis en Windows XP SP3).

    J'ouvre Studio avec le programme blink et je connecte l'Atmel-ICE à la platine d'expérimentation par la prise JTAG. D'abord, je constate que contrairement à l'ISP, l'alimentation du µC n'est pas fournie par le JTAG. J'ajoute donc une alimentation 5V auxiliaire.

    Je clique ensuite sur le bouton "Device Programming".
    La fenêtre suivante s'ouvre et je choisis Atmel-ICE comme tool, Atmega1284P comme device et JTAG comme Interface.

    Select Interface.jpg

    Je clique sur "Apply" et je reçois le message qu'une mise à jour du firmware est nécessaire:

    Firmware Upgrade.jpg

    La mise à jour se passe correctement, ce qui est confirmé par ce message :

    Upgrade successfull.jpg

    Ensuite, les affaires se compliquent. Il est impossible de lire la "Device Signature" car Studio trouve que la tension du µC (Target Voltage) est 0,7V.

    Target Voltage.jpg

    Le Target Voltage correspond à la pin 4 du connecteur JTAG. J'enlève donc la prise et je mesure la tension de la pin 4 : 5,5V

    Je change l'alimentation du µC et je fournis 3,3V
    Cette fois, Studio mesure 0,3V comme Target Voltage. L'accès est toujours refusé.

    Pour le moment, je ne pas trop quoi faire.

    -----

  2. #302
    invitedca01a58

    Re : De l'Arduino au langage C standard avec AVR Studio

    J'ai essayé de fermer Studio et débrancher Atmel-ICE puis de relancer Studio et rebrancher ICE.
    Cette fois, le Target Voltage mesuré est 0,4V (pour une alimentation en 5V).

    J'ai à nouveau débranché l'ICE et j'ai vérifié les connections des 10 pins du connecteur JTAG de la platine d'expérimentation, comparées avec le tableau des pins d'Atmel :

    Nom : JTAG Pin Description.jpg
Affichages : 154
Taille : 93,0 Ko

    Voici mes constatations:
    La pin4 est connectée à VCC (c'est logique).
    La pin 7 est aussi connectée à VCC. (Elle n'est pas mentionnée dans le tableau d'Atmel).
    La pin 8 n'est connectée à rien.

    Le reste est conforme au tableau ci-dessus.

  3. #303
    invitedca01a58

    Re : De l'Arduino au langage C standard avec AVR Studio

    Cela n'a peut-être rien à voir avec mon problème mais j'ai quand même constaté quelque chose de troublant.

    Voici une vue macro des connecteurs de l'Atmel-ICE :

    connecteur.jpg

    Le connecteur IDC de droite est pour les AVR.
    On voit très bien l'encoche sur la face supérieure.
    Théoriquement, le pinout correspond donc à ceci :

    JTAG.jpg

    Habituellement, le câble en nappe a un bord rouge du côté de la pin N°1.
    Or le câble fourni avec l'Atmel-Ice a son bord rouge du côté de la pin 10.

    connexion.jpg

    Le dessin ci-dessus montre par ailleurs un point à gauche du fil rouge, indiquant le côté de la pin N°1. C'est l'inverse de la prise IDC de la première photo.

  4. #304
    laveplusblanc

    Re : De l'Arduino au langage C standard avec AVR Studio

    Bonjour, Jean Marie

    Effectivement, cela ne peut être qu'un problème du câble de connexion.
    Je te conseille dans une première phase, de prendre un multimètre et de vérifier ton adaptateur : continuité et absence de court circuit.
    LVPBL

  5. #305
    invitedca01a58

    Re : De l'Arduino au langage C standard avec AVR Studio

    Hello laveplusblanc,

    Merci pour tes indications. Je suis du même avis que toi. J'ai donc refait d'une part les tests de continuité entre la prise IDC femelle 50 mil qui se connecte à l'ICE et le connecteur IDC mâle 100 mil de mon adaptateur ==> continuité parfaite.
    J'ai aussi refait les tests de court-circuit entre chacun des 10 fils et tous les autres fils ==> aucun court-circuit.

    Lors des tests de continuité, j'ai relevé quelles étaient réellement les pins en communication :

    Nom : Pinout réel.jpg
Affichages : 121
Taille : 97,8 Ko

    La numérotation du connecteur droit (100 mil) est normale.
    Les pin jaunes sont en connexion avec la numérotation bleue du connecteur 50 mil (à gauche).
    Cependant, on voit que cette numérotation bleue est à l'envers de la numérotation normale.

  6. #306
    laveplusblanc

    Re : De l'Arduino au langage C standard avec AVR Studio

    L'idéal est de faire les tests de continuité vraiment à partir des pins du uC (ou du Zif) et au plus près (connecteur) de l'ICD.
    LVPBL

  7. #307
    invitedca01a58

    Re : De l'Arduino au langage C standard avec AVR Studio

    Afin de savoir si le câble d'Atmel n'avait pas été monté à l'envers, j'ai eu une idée en examinant le Pinout du JTAG.

    Nom : AVR JTAG Header Pinout.jpg
Affichages : 156
Taille : 11,6 Ko

    Ce dessin est accompagné du texte suivant dans le user guide d'Atmel :
    When designing an application PCB which includes an Atmel AVR with the JTAG interface, it is recommended to use the pinout as shown in Figure 17, “AVR JTAG Header Pinout”.
    Le pinout correspond à la prise IDC 100 mil de mon adaptateur (j'ai aussi vérifié que la prise JTAG de la platine d'expérimentation est câblée aux bonnes pins du µC).

    Si le câble Atmel et le montage sont bons, les pins 2 et 10 doivent être en continuité électrique lorsque le câble est connecté entre l'ICE et mon adaptateur. Si le câble avait été monté à l'envers, ce serait les pins 1 et 9 qui seraient en continuité.
    J'ai fait le test ==> les pins 2 et 10 sont bien connectées ensemble.
    Conclusion : il n'y a pas d'erreur de montage du câble, pas de signal interrompu et pas de court-circuit.

    Aïe aïe aïe ! Le mystère s'épaissit.

  8. #308
    laveplusblanc

    Re : De l'Arduino au langage C standard avec AVR Studio

    Ou alors un souci du côté de la petite carte qui supporte le uC
    Quand le ICE est débranché et l'alim connectée, y a-t-il bien 5V sur les pattes du uC? et sur la pin correspondante du connecteur Jtag ? Que cela devient-il une fois que le ICE est branché?
    LVPBL

  9. #309
    invitedca01a58

    Re : De l'Arduino au langage C standard avec AVR Studio

    Citation Envoyé par laveplusblanc Voir le message
    L'idéal est de faire les tests de continuité vraiment à partir des pins du uC (ou du Zif) et au plus près (connecteur) de l'ICD.
    LVPBL
    J'ai suivi ta proposition. J'ai donc connecté ensemble la platine d'expérimentation avec son Atmega1284P, un câble plat IDC ordinaire, mon adaptateur et le câble Atmel. J'ai cherché à quelle pin de l'Atmega correspondait chaque 'trou' de la prise allant dans l'ICE et j'ai noté le résultat sur une photo de la prise ICE du câble Atmel.

    Nom : Signaux à la prise ICE.jpg
Affichages : 148
Taille : 45,2 Ko

    On voit d'une part que les signaux de gauche devraient être à droite et vice-versa.
    D'autre part, la borne de droite marquée VCC aurait dû soit rester non connectée, soit être connectée à Reset.

  10. #310
    invitedca01a58

    Re : De l'Arduino au langage C standard avec AVR Studio

    Citation Envoyé par laveplusblanc Voir le message
    Ou alors un souci du côté de la petite carte qui supporte le uC
    Quand le ICE est débranché et l'alim connectée, y a-t-il bien 5V sur les pattes du uC? et sur la pin correspondante du connecteur Jtag ? Que cela devient-il une fois que le ICE est branché?
    LVPBL
    Quand l'ICE est débranché et l'alim connectée, les pattes du µC montrent 5,15V. Même tension sur la pin du connecteur JTAG.

    J'ai alors rebranché l'ICE.

    Tout branché.jpg

    On voit les Led de l'ICE. La led rouge indique que l'ICE est alimenté. La led verte ne s'allume que si le target voltage est bon. J'ai bien l'impression que cette led ne s'allumait pas hier !!!!!

    J'ai alors cliqué sur signature, plein d'espoir.
    ==> espoir déçu :

    No JTAG devices detected.jpg

    La différence avec hier, c'est que Studio détecte le Target voltage.

  11. #311
    invitee2def47b

    Re : De l'Arduino au langage C standard avec AVR Studio

    Citation Envoyé par Jean-Marie45 Voir le message
    On voit d'une part que les signaux de gauche devraient être à droite et vice-versa.
    D'autre part, la borne de droite marquée VCC aurait dû soit rester non connectée, soit être connectée à Reset.
    Bonjour Jean-Marie,

    Je n'ai toujours pas compris si les brochages du JTAG sont standard, mais si je me réfère à ceux qui se rapprochent du tient (aux symétries près), il me semble que les broches HAUT/BAS sont aussi inversées (selon ce site )

    Il me semble donc qu'en démontant le connecteur mâle du câble et en le remontant après l'avoir tourné de 180° les broches devraient être dans le (supposé) bon l'ordre. Attention, sans garantie...

    En espérant que ça fonctionnera.

  12. #312
    invitedca01a58

    Re : De l'Arduino au langage C standard avec AVR Studio

    Il est possible que le câble Atmel ait été mal branché sur mon adaptateur hier. En effet, je viens de refaire à nouveau les branchements et le connecteur Atmel est tellement petit que je l'avais placé avec une rangée de pins en-dehors du connecteur femelle. Evidemment, la led verte restait éteinte comme hier, jusqu'à ce que la prise soit bien replacée.

    J'ai interrompu la liaison avec le VCC non prévue dans le pinout théorique (voir message 309). Malheureusement, cela n'a rien changé et j'obtiens toujours le même message d'erreur.

  13. #313
    invitee2def47b

    Re : De l'Arduino au langage C standard avec AVR Studio

    Justement, si je comprends bien ton message 309, les broches Gauches/Droites sont inversées, et d'après moi Haut/Bas aussi (As tu vu mon message 311, il a du se croiser lui aussi )?

  14. #314
    invitedca01a58

    Re : De l'Arduino au langage C standard avec AVR Studio

    Hello Adam

    Oui, tu as raison, il y a aussi inversion haut/bas par rapport à une prise standard.
    Ces connections "à l'envers" ne se trouvent qu'à l'extrémité du câble Atmel connectée à l'ICE. L'autre extrémité a un brochage normal.

    J'ai l'impression que cet aspect "à l'envers" du câble est "rectifié" par un brochage "à l'envers" du connecteur du PCB de l'ICE.

    En effet, maintenant que la led verte s'allume et que Studio peut lire la tension du µC cible, cela semble signifier que la pin de Vtarget est à sa place. Donc les signaux ne sont pas inversés.

  15. #315
    invitedca01a58

    Re : De l'Arduino au langage C standard avec AVR Studio

    Hello Adam,

    Nos messages se sont croisés 2 fois de suite.

  16. #316
    invitee2def47b

    Re : De l'Arduino au langage C standard avec AVR Studio

    Oui effectivement, j'avais lu un peu vite et je n'ai pas vu que le brochage était coté ICE.
    Sinon, pour les messages, contrairement aux câblages, les croiser 2 x ne les remet pas dans l'ordre

  17. #317
    invitedca01a58

    Re : De l'Arduino au langage C standard avec AVR Studio

    Putain, je pense à une chose.

    Ne dois-je pas d'abord programmer le fuse JTAGEN avec un AVRISP mkII avant d'essayer de travailler avec l'ICE ?????

  18. #318
    mkh.mourad

    Re : De l'Arduino au langage C standard avec AVR Studio

    Citation Envoyé par Jean-Marie
    Pièce jointe 254877
    Pièce jointe 254879

    On voit d'une part que les signaux de gauche devraient être à droite et vice-versa.
    D'autre part, la borne de droite marquée VCC aurait dû soit rester non connectée, soit être connectée à Reset.
    je pense qu'il faut une miroir horizontal et aussi verticale, les fils doivent être permutés de gauche a droite et du haut en bas!!

  19. #319
    mkh.mourad

    Re : De l'Arduino au langage C standard avec AVR Studio

    Citation Envoyé par Jean-Marie45 Voir le message
    Putain, je pense à une chose.

    Ne dois-je pas d'abord programmer le fuse JTAGEN avec un AVRISP mkII avant d'essayer de travailler avec l'ICE ?????
    si il le faut, mais le problème c'est que l'AtmelICE ne lis pas la tension de la cible VTG. il dois voir cette tension sur cette pin, pour savoir la tension des état logique de communication JTAG.

  20. #320
    invitee2def47b

    Re : De l'Arduino au langage C standard avec AVR Studio

    Dans la doc du AVR® JTAG ICE, ( je sais que ce n'est pas le même appareil), il est dis que le JTAG enable fuse et le OCD enable fuse sont par défaut en position "autorisés" pour les µC en sortie d'usine (ce qui semble logique). Je crois me souvenir que tu as d'autres 1284p dans tes tiroirs, donc tu peux essayer d'en changer un pour voir.

  21. #321
    laveplusblanc

    Re : De l'Arduino au langage C standard avec AVR Studio

    Bonsoir, Jean Marie
    Sur la photo du montage du post 310, je ne vois pas clairement par quoi est alimentée la platine d'essai avec l'atmega.
    J'espère que ce n'est pas par l'USB du PC.
    Si ce n'est pas le cas, mettez lui absolument une alimentation séparée et bien propre, d'expérience, pas mal de problèmes proviennent de là.
    LVPBL

    PS: mettez la JTAG clock à 250Khz (essayez aussi à 125)
    Dernière modification par laveplusblanc ; 04/08/2014 à 18h49.

  22. #322
    laveplusblanc

    Re : De l'Arduino au langage C standard avec AVR Studio

    Pour éviter toute ambiguïté, les schémas des pins des connecteurs JTAG sont toujours des vues du dessus des connecteurs mâles.
    LVPBL
    Dernière modification par laveplusblanc ; 04/08/2014 à 19h15.

  23. #323
    invitedca01a58

    Re : De l'Arduino au langage C standard avec AVR Studio

    Hello Mourad
    Tu n'as probablement pas vu l'un de mes messages car maintenant, Studio est capable de lire la tension de la cible.




    @ A Adam

    En fait, j'ai 2 Atmega1284P.
    Le premier est celui qui est sur ma platine. Je l'avais déjà programmé en assembleur il y a plusieurs mois.
    Voici ses fuses :

    Fuses Atmega1284P avant modif.jpg

    On voit que JTAGEN et OCDEN ne sont pas programmés.

    L'autre Atmega est neuf.
    Voici ses fuses:

    Fuses Atmega1284P neuf.jpg

    JTAGEN est programmé, mais pas OCDEN. Attention à la source interne de fréquence, divisée par 8.

    Je reprend le premier Atmega et je programme JTAGEN. Pour le moment, je ne touche pas à OCDEN (pas d'expérience dans ce domaine).
    Je débranche AVRISP mkII et je rebranche l'ICE.

    Youppppie !!!

    Cette fois, j'ai pu lire la tension cible et la signature du µC.

    JTAG successfull.jpg




    @ Laveplusblanc

    La platine est alimentée pour le moment par un adaptateur 220VAC-5VDC, à travers un petit convertisseur USB-Serial TTL car la sortie de l'adaptateur se fait sur prise USB. Dois-je construire moi-même une alim avec un transfo, un redresseur, un régulateur 7805 et des condensateurs ?

  24. #324
    invitee2def47b

    Re : De l'Arduino au langage C standard avec AVR Studio

    Bravo, ton intuition était la bonne!

  25. #325
    invite00250c99

    Re : De l'Arduino au langage C standard avec AVR Studio

    Salut,
    Si tu as un régulateur sur ta carte, et c'est probablement le cas, il ne devrait pas y avoir de soucis d'alim, même par l'USB (et encore moins avec un bloc externe)
    L'USB peut délivrer jusqu'à 500mA, ce qui est bien plus que ce qu'un simple microcontrôleur va consommer. Il pourrait y avoir des soucis si l'alim n'est pas stable, mais un régulateur et surtout un découplage correct devrait éviter ce genre de soucis.

  26. #326
    invitedca01a58

    Re : De l'Arduino au langage C standard avec AVR Studio

    Citation Envoyé par Adam_D Voir le message
    Bravo, ton intuition était la bonne!
    Merci pour les fleurs.
    Mais surtout merci à vous car vous avez bien aidé à faire progresser la réflexion. On n'est jamais aussi perdu que quand on est seul devant un problème. D'ailleurs, hier soir je vous ai dit "je ne vois plus trop quoi faire", alors qu'aujourd'hui, j'ai passé ma journée à réfléchir et à tester toutes vos suggestions.

    Donc, pour ceux qui voudraient se lancer dans l'aventure de l'Atmel-ICE:
    • Ne vous laissez pas envahir par l'impression que le connecteur du câble Atmel est à l'envers. C'est voulu.
    • Si vos branchements sont corrects, les leds rouge et verte de l'ICE doivent être allumées.
    • Vous devrez soit acheter la version avec les câbles complets, soit fabriquer votre propre adaptateur.
    Il est regrettable qu'Atmel ait choisi des connecteurs aussi petits et aussi peu fréquents. J'ai trouvé le mien sur eBay (pin header 1.27mm).

    Enfin, voici les fuses de l'Atmega1284P pour JTAG (programmés avec AVRISP mkII et relus avec JTAG) :

    Nom : Fuses Atmega1284P pour JTAG.jpg
Affichages : 129
Taille : 90,8 Ko

  27. #327
    invitedca01a58

    Re : De l'Arduino au langage C standard avec AVR Studio

    Citation Envoyé par Slan85 Voir le message
    Salut,
    Si tu as un régulateur sur ta carte, et c'est probablement le cas, il ne devrait pas y avoir de soucis d'alim, même par l'USB (et encore moins avec un bloc externe)
    L'USB peut délivrer jusqu'à 500mA, ce qui est bien plus que ce qu'un simple microcontrôleur va consommer. Il pourrait y avoir des soucis si l'alim n'est pas stable, mais un régulateur et surtout un découplage correct devrait éviter ce genre de soucis.
    Hello Slan85

    Non, la carte n'a pas de régulateur. Il faut lui fournir le 5V tout fait.
    Par la prise ISP, on reçoit le 5V de l'USB mais la prise JTAG ne fournit pas l'alimentation.
    Ceci dit, j'ai l'intention de border la platine de deux breadboard de 830 points (eBay "breadboard 830). Il existe des petits modules d'alimentation 5V / 3.3V pour ces breadboard (eBay "MB102"). Je suppose que cela pourrait convenir, quitte à ajouter un condensateur près de la pin VCC de l'Atmega.

  28. #328
    laveplusblanc

    Re : De l'Arduino au langage C standard avec AVR Studio

    Félicitations, Jean Marie

    Il me semblait qu'arvstudio 4.x demandait à changer ce fuse quand on passait de l'un à l'autre (programmation au debug).
    J'utilise personnellement des petits chargeurs de GSM 5V, on en trouve partout pour quasi rien.
    Tu verras, une fois que l'on a "gouté" au debug ICD, les autres méthodes sembleront (tellement) archaïques.

    LVPBL
    Dernière modification par laveplusblanc ; 04/08/2014 à 21h54.

  29. #329
    invitedca01a58

    Re : De l'Arduino au langage C standard avec AVR Studio

    Citation Envoyé par laveplusblanc
    Il me semblait qu'arvstudio 4.x demandait à changer ce fuse quand on passait de l'un à l'autre (programmation au debug)
    Parles-tu de OCDEN ? Je ne connais encore rien du debug. Donc c'est possible que le fuse est automatiquement modifié selon ce qu'on fait. J'ai le souvenir d'avoir lu des cas où le µC se bloque car on a modifié manuellement un fuse alors que c'est la sortie d'une session (de debug probablement) qui devait le modifier. Mais j'ai oublié les détails (OCDEN ? mode "One wire" ? etc...). Voilà pourquoi je n'ai pas osé modifier OCDEN manuellement.
    Bien sûr, il est toujours possible de débloquer un fuse mal positionné mais parfois il faut un programmateur high voltage et je n'en ai pas !

    As-tu une idée de ce que je pourrais lire pour essayer une petite session de debug ?

  30. #330
    laveplusblanc

    Re : De l'Arduino au langage C standard avec AVR Studio

    Oui, il faut programmer OCDEN (On Chip Debug Enable)
    Il y a un article AVRfreaks sur le sujet; faire une recherche google de "AVRfreaks Guide to Understanding JTAG Fuses and Security"
    LVPBL

Page 11 sur 21 PremièrePremière 11 DernièreDernière

Discussions similaires

  1. Arduino anti rebond avec arduino
    Par invited0bffa74 dans le forum Électronique
    Réponses: 13
    Dernier message: 23/10/2014, 17h04
  2. Stopper une boucle - Langage Arduino.
    Par Baliethecat dans le forum Programmation et langages, Algorithmique
    Réponses: 2
    Dernier message: 10/04/2014, 06h31
  3. Communication arduino-arduino avec module Xbee
    Par inviteda9a8a4b dans le forum Électronique
    Réponses: 2
    Dernier message: 23/12/2013, 17h24
  4. Utiliser un Arduino UNO R3 avec ATMEL Studio 6
    Par HAYAC dans le forum Électronique
    Réponses: 2
    Dernier message: 27/07/2012, 14h12
  5. Réponses: 15
    Dernier message: 19/07/2012, 22h53
Dans la rubrique Tech de Futura, découvrez nos comparatifs produits sur l'informatique et les technologies : imprimantes laser couleur, casques audio, chaises gamer...