Répondre à la discussion
Affichage des résultats 1 à 7 sur 7

MPLAB ICD3 Erreur 40



  1. #1
    pseudoguyanais

    MPLAB ICD3 Erreur 40


    ------

    Bonjour,

    J'ai réalisé un montage électronique avec dessus un PIC32 et d'autres trucs qui vont avec.
    Toute ma carte marchait bien au niveau hardware mais UN de mes programme pour cette carte qui devait gérer l'interface USB ne marchait pas, en fait à cause de mon quartz externe qui n'avait pas une bonne valeur.

    Après l'avoir changé, là c'est le drame ! :
    Je fais programmer mon pic, et là à la fin de la programmation une erreur apparait :

    ICD3Err0040: The target device is not ready for debugging. Please check your configuration bit settings and program the device before proceeding.



    Avez-vous déjà eu une erreur de ce type? Je pense que c'est le quartz qui n'est pas bon, mais il y a peut être autre chose derrière ça.
    Ce genre d'erreur apparait plutôt pour quelle raisons normalement?

    Merci de votre aide

    -----

  2. Publicité
  3. #2
    RISC

    Re : MPLAB ICD3 Erreur 40

    Salut,

    Peux-tu faire voir ton schéma et tes bits de configuration ?

    a+
    Ma marotte ? les microcontrôleurs ;=)

  4. #3
    pseudoguyanais

    Re : MPLAB ICD3 Erreur 40

    oui voilà les bits de conf :
    Code:
        #pragma config UPLLEN   = ON            // USB PLL Enabled
        #pragma config FPLLMUL  = MUL_20        // PLL Multiplier
        #pragma config UPLLIDIV = DIV_4         // USB PLL Input Divider
        #pragma config FPLLIDIV = DIV_24        // PLL Input Divider
        #pragma config FPLLODIV = DIV_1         // PLL Output Divider
        #pragma config FPBDIV   = DIV_1         // Peripheral Clock divisor
        #pragma config FWDTEN   = OFF           // Watchdog Timer 
        #pragma config WDTPS    = PS1           // Watchdog Timer Postscale
        #pragma config FCKSM    = CSDCMD        // Clock Switching & Fail Safe Clock Monitor
        #pragma config OSCIOFNC = ON	        // CLKO Enable
        #pragma config POSCMOD  = XT            // Primary Oscillator
        #pragma config IESO     = OFF           // Internal/External Switch-over
        #pragma config FSOSCEN  = OFF           // Secondary Oscillator Enable
        #pragma config FNOSC    = PRIPLL        // Oscillator Selection
        #pragma config CP       = OFF           // Code Protect
        #pragma config BWP      = OFF           // Boot Flash Write Protect
        #pragma config PWP      = OFF           // Program Flash Write Protect
        #pragma config ICESEL   = ICS_PGx2      // ICE/ICD Comm Channel Select
        #pragma config DEBUG    = ON       	    // Debugger Enable For ICD3
    Mais je doute que cela vous aide car j'ai réalisé deux montages identiques et un marche très bien avec un quartz de 10MHz et l'autre ne marche donc plus avec un quartz que j'ai changé et remplacé par un 16 MHz.

  5. #4
    RISC

    Re : MPLAB ICD3 Erreur 40

    Salut,

    dois-je compendre que ton ICD3 fonctionne quand tu utilises la carte avec le quartz 10MHz et pas avec le quartz 16MHz ?

    Quel modèle de PIC32 utilises-tu ?

    Tes bits de configuration sont très étranges....au niveau de la PLL...
    Tu ne respectes pas du tout la datasheet....

    Lis le chapitre sur "Oscillator configuration". Le schéma montre clairement que la fréquence à l'entrée de la PLL doit être comprise entre 4MHz <= f <= 5MHz)
    Avec FPLLIDIV = 24 cela fait donc 10MHz / 24 .....==> hors spec

    Es-tu toujours certain de ta phrase "je doute que cela vous aide ..."

    A mon humble avis, tu devrais bien réfléchir à la valeur du quartz. 10MHz est un très mauvais choix car à l'entrée de l'USB tu dois avoir 4MHz donc il faut impérativement avoir un quartz mulitple de 4MHz (ma recommendation c'est d'utiliser 8MHz, qui permettra d'avoir du 48MHz sur l'USB et du 80MHz pour le CPU)

    a+
    Ma marotte ? les microcontrôleurs ;=)

  6. #5
    pseudoguyanais

    Re : MPLAB ICD3 Erreur 40

    Ouppss!

    Bien vu, mais en fait il n'y a pas d'erreur vraiment, j'explique :

    Avec mon autre carte je faisais les tests pour voir si ce programme marchait au moins sur celle-là (avec le 10MHz) et PLLDIV était donc de 2, mais avec l'autre quart de 16Mhz jutilisais PLLDIV à 4.
    J'ai copié collé les bits de confs pour le 10MHz et j'ai remplacé 2 par 4 (ce que je fais qd je teste le programme avec le 16 Mhz) et donc ce n'est pas "24" mais "4"...

    Encore désolé et oui je doute que ce soit utile! Mais sauf si vous avez d'autres pistes, je re-posterai après avoir rechangé le quartz. Je ne peux pas trop faire de test en ce moment.

    Merci et dsl pour la boulette.

  7. A voir en vidéo sur Futura
  8. #6
    pseudoguyanais

    Re : MPLAB ICD3 Erreur 40

    Bon ben c'était bien le quartz qui était pourrave,...

    Dsl pour le dérangement!

    A+

  9. Publicité
  10. #7
    RISC

    Re : MPLAB ICD3 Erreur 40

    Salut,

    On ne le dira jamais assez...

    Commencer par vérifier :
    1/ l'alimentation
    2/ le circuit de reset
    3/ le circuit d'oscillation

    A elles trois ces conditions représentent 99% des PB de démarrage des cartes...

    Et ensuite...les bits de configuration ;=)

    a+
    Ma marotte ? les microcontrôleurs ;=)

Sur le même thème :

Discussions similaires

  1. printf() icd3 mplab uart1A
    Par pseudoguyanais dans le forum Électronique
    Réponses: 5
    Dernier message: 23/09/2010, 10h57
  2. MPLAB ICD3 court-circuite la carte : impossible de programmer!
    Par herrmattoon dans le forum Électronique
    Réponses: 3
    Dernier message: 03/07/2010, 09h26
  3. [MPlab] Erreur en mode débugueur
    Par Tevz dans le forum Électronique
    Réponses: 3
    Dernier message: 06/04/2010, 22h16
  4. [MPLAB / C18] - Erreur de compilation
    Par jorg1n dans le forum Électronique
    Réponses: 7
    Dernier message: 20/11/2009, 10h32
  5. Erreur Mplab /mplink
    Par cookieParis dans le forum Électronique
    Réponses: 10
    Dernier message: 23/11/2005, 13h09
Découvrez nos comparatifs produits sur l'informatique et les technologies.