MPLAB X + XC8 + PIC Programmer + petits pbs
Répondre à la discussion
Affichage des résultats 1 à 17 sur 17

MPLAB X + XC8 + PIC Programmer + petits pbs



  1. #1
    33bert51

    MPLAB X + XC8 + PIC Programmer + petits pbs


    ------

    Bonjour,

    Novice en matière de MPLAB, j'ai ubuntu 12.10
    J'ai installé MPLAB X (impressionnant les possibilités)
    J'ai installé xc8-v1.12
    J'ai un PIC Programmer USB - ICSP icP01-V2.0 (équivalent pickit2 mais beaucoup moins cher !)
    Une carte de développement avec un 16F877A

    MPLAB X reconnaît bien le PIC à travers le programmeur (quoique les deux témoins sont jaunes pour la reconnaissance de l'équivalent du pickit2)

    J'ai écrit un programme en asm. Je lance la compilation et surprise, tout est automatique, chargement dans le PIC et fonctionnement immédiat du programme ! ça marche.

    1/ Par contre je pensais que le programme était installé mais quand je retire la cnx ICSP, le programme ne tourne pas. Je n'arrive pas encore à trouver pourquoi ?

    2/ J'ai donc rechargé le programme .hex (généré avec MPLAB X) avec pk2cmd (dwarf), celui-ci ne fonctionne pas non plus.

    3/ J'ai écrit un programme en C. Là, ça ne marche pas du tout. A priori la compile se passe bien.

    4/ Doit-on toujours supporter le chemin dist/default/production pour les fichiers générés ?

    Bon, voilà, j'en suis là, dès que je trouve des réponses, je balance mais si vous avez déjà des indices, n'hésitez pas.

    -----

  2. #2
    invitefa96bd8f

    Re : MPLAB X + XC8 + PIC Programmer + petits pbs

    Salut,

    il se pourrait que tu soit en mode "debugger" et pas en mode "normal", ce qui explique que le programme fonctionne correctement que lorsque le programmateur est branché.

    Tu as bien une 10k entre MCLR et VDD ? Les capas de découplages, une alim qui fait bien 5V ou 3.3V selon le PIC ?

  3. #3
    RISC

    Re : MPLAB X + XC8 + PIC Programmer + petits pbs

    Salut,

    Plusieurs raisons possible à ton problème :
    1/ problème hardware ( poste ton schéma )
    2/ problème logiciel : typiquement une erreur dans les bits de configuration peut provoquer ce genre de dysfonctionnement. Pour simplifier la résolution, il suffit de faire un tout petit programme qui fait simplement clignoter une led SANS interruptions en utilisant de délais. Cela minimise les sources d'erreurs et accélère la convergence vers la découverte de la source du problème.

    a+

  4. #4
    invite07d645db

    Re : MPLAB X + XC8 + PIC Programmer + petits pbs

    Je suis du même avis que terriblement, ça ressemble fortement à un problème de MCLR non tiré au Vcc, ou mode debug.

  5. A voir en vidéo sur Futura
  6. #5
    33bert51

    Re : MPLAB X + XC8 + PIC Programmer + petits pbs

    Merci pour vos premières réponses.

    La carte est une carte de développement donc je pense qu'elle est bien conçue.

    En fait, le chargement vers le PIC marche et lorsque j'enlève le connecteur ICSP, ça marche aussi ! Mais parfois ça met un certain temps avant que les leds clignotent...
    Donc ça c'est fait !

    A suivre.

  7. #6
    RISC

    Re : MPLAB X + XC8 + PIC Programmer + petits pbs

    Salut,

    Citation Envoyé par 33bert51 Voir le message
    La carte est une carte de développement donc je pense qu'elle est bien conçue.
    De quelle carte s'agit-il ? Lien ?


    Mais parfois ça met un certain temps avant que les leds clignotent...
    C'est JUSTEMENT la preuve qu'il y a un problème...qu'il faut résoudre, sinon ton montage fait partie des systèmes tombés en marche et cela t'empoisonnera surtout au moment ou tu en auras le plus besoin (loi de Murphy).

    a+

  8. #7
    invite07d645db

    Re : MPLAB X + XC8 + PIC Programmer + petits pbs

    ça sent le mauvais tirage de la broche MCLR.

  9. #8
    33bert51

    Re : MPLAB X + XC8 + PIC Programmer + petits pbs

    C'est une carte STK PIC16F877 (http://img.inkfrog.com/click_enlarge...&aid=361872531)


    Ma question est :
    Pourquoi après un chargement, MPLAB lance le programme ?
    On peut lire :
    Connecting to programmer...
    Programming target...
    Programming completed
    Running target...

    Ne peut-on pas uniquement charger le programme ?

  10. #9
    33bert51

    Re : MPLAB X + XC8 + PIC Programmer + petits pbs

    MPLAB X IDE User's Guide paragraphe 3.4.8
    Clic Run lance immédiatement le programme
    Clic Make diffère le lancement du programme

    Dans mon cas, c'est l'inverse ! Et vous ?

  11. #10
    invitefa96bd8f

    Re : MPLAB X + XC8 + PIC Programmer + petits pbs

    Si tu dois cliquer sur RUN c'Est que t'Es en mode debug et non en mode programmation !
    Donc commence par vérifier chaque point qui est montré par ceux qui t'aident, sinon ca avancera jamais.

    Donc faut cliquer sur make and Program Device.

    Tu peux aussi poster le code utilisé pour faire clignoté la LED.

  12. #11
    33bert51

    Re : MPLAB X + XC8 + PIC Programmer + petits pbs

    Mon premier petit programme en C fonctionne sur ma carte d'étude :
    -------------------------
    #include <xc.h>
    #include <pic16f877a.h>
    #pragma config WDTE=OFF, FOSC=XT

    void main(void) {
    TRISD = 0x00;
    PORTD = 0x0f; //les 4 leds de droite s'allument
    while(1);
    }
    -------------------------
    C'est un bon début...
    Il n'est pas aisé de trouver des infos sur les fusibles, ni sur les librairies à inclure même si maintenant cela paraît évident.

  13. #12
    33bert51

    Re : MPLAB X + XC8 + PIC Programmer + petits pbs

    Jeu de LEDs
    -----------------
    #include <xc.h>
    #include <pic16f877a.h>

    #pragma config WDTE=OFF, FOSC=XT

    void main(void) {
    TRISD = 0x00;
    PORTD = 0x0f;
    _delay(200000);
    PORTD = 0xf0;
    _delay(200000);
    }
    --------------------
    Les 4 de droite s'allument puis les 4 de gauches...

  14. #13
    RISC

    Re : MPLAB X + XC8 + PIC Programmer + petits pbs

    Salut,

    C'est pas la photo de ta carte dont on a besoin mais le schéma électrique...

    Ton interprétation de make est fausse...
    Je pense que tu devrais lire le manuel de MPLAB X pour comprendre l'utilité des différents icones.
    Il existe pleins des videos sur le MPLAB X channel pour démarrer avec MPLAB X.
    Tu peux aussi t'aider du Wiki MPLAB X.

    a+

  15. #14
    RISC

    Re : MPLAB X + XC8 + PIC Programmer + petits pbs

    Salut,

    Ta carte vient de eBay ?
    Je pense avoir trouvé sur internet le contenu du CR-ROM qui a du être livré avec.

    D'après le schmé il y a une résistance de 10K sur la broche MCLR.

    Ton problème vient peut-être du fait qu'il faut activer le POR (Power On Reset) dans les bits de configuration
    Code:
    #include <xc.h>
    //  #include <pic16f877a.h>    Cette ligne n'est plus nécessaire. Elle est remplacée par la ligne au-dessus si tu utilises XC8
    
    #pragma config WDTE=OFF, FOSC=XT, PWRTE=ON      // ajouter PWRTE=ON
    
    void main(void) 
    {
    TRISD = 0x00;
    PORTD = 0x0f;
    _delay(200000);
    PORTD = 0xf0;
    _delay(200000);
    }

    a+

  16. #15
    33bert51

    Re : MPLAB X + XC8 + PIC Programmer + petits pbs

    Merci pour vos aides. Comme je vous le disais au début, je débute. En ce moment je planche sur le registre de configuration.

    Pour la doc MPLAB, je la regarde aussi, c'est mon anglais qui parfois pêche.

    Si je n'ai pas mis le schéma, c'est que je n'ai pas eu le temps. De toute façon j'ai bien vérifié la présence de la résistance pour le signal MCLR.

    Quand je charge les programmes en C, je n'ai pas le même problème qu'en assembleur, ça marche très bien. Donc la config des fusibles est à revoir dans le fichier asm.

    Au sujet de Run ou make, j'ai lu cela :
    Click Run: The project is built (if necessary) and device is programmed. The pro-
    gram will immediately begin execution on completion of programming.
    • Click Make and Program Device: The project is built (if necessary) and device is
    programmed. The program will NOT immediately begin execution on completion
    of programming.

    Je vais maintenant m'attaquer aux interruptions...
    A+

  17. #16
    invitefa96bd8f

    Re : MPLAB X + XC8 + PIC Programmer + petits pbs

    donc ça fonctionne maintenant ?

  18. #17
    33bert51

    Re : MPLAB X + XC8 + PIC Programmer + petits pbs

    Oui, ça marche, en C, cela paraît plus facile. Même si certaines de mes remarques du premier post sont sans réponse.
    - Après un chargement, il n'y a pas d'option pour que le logiciel se "déconnecte" du pickit2. ça me gêne toujours de débrancher quelque chose qui est alimentée...
    - Le choix des répertoires des fichiers générés...

    A+

Discussions similaires

  1. MPLAB X ; XC8, C18 et CCS sur Ubuntu
    Par invite6cb06424 dans le forum Électronique
    Réponses: 8
    Dernier message: 27/07/2012, 12h36
  2. Programmer un PIC avec un Pickit 3 sans MPLAB
    Par invite2de7076a dans le forum Électronique
    Réponses: 4
    Dernier message: 04/08/2010, 09h16
  3. Programmer en C sur mplab?
    Par invite935a281a dans le forum Électronique
    Réponses: 2
    Dernier message: 07/11/2009, 16h49
  4. Programmer en C sous Mplab.
    Par invite2a128a15 dans le forum Électronique
    Réponses: 10
    Dernier message: 01/12/2008, 10h12
  5. Réponses: 0
    Dernier message: 05/07/2008, 20h59
Dans la rubrique Tech de Futura, découvrez nos comparatifs produits sur l'informatique et les technologies : imprimantes laser couleur, casques audio, chaises gamer...