[Programmation] Faire tourner un PIC 18F4525 à 32 MHz avec l'oscillateur interne...
Répondre à la discussion
Affichage des résultats 1 à 11 sur 11

Faire tourner un PIC 18F4525 à 32 MHz avec l'oscillateur interne...



  1. #1
    Montd'est

    Faire tourner un PIC 18F4525 à 32 MHz avec l'oscillateur interne...


    ------

    Bonjour;
    Tout est dans le titre, je galère depuis 2 H...

    J'ai écrit ceci en début de programme pour tenter de faire marcher l'oscillateur interne à 32 MHz en faisant tourner le "INTOSC" à 8 MHz et en activant la PLL pour multiplier par 4... sans succès.

    Code:
     
    
    OSCTUNE.PLLEN:= 1;  // Activation PLL
     OSCCON.SCS1:=1; // interrnal os
    
     OSCCON.IRCF2:=1;
     OSCCON.IRCF1:=1;
     OSCCON.IRCF0:=1;     // 8 MHz
    Et CONFIG1H : = 0x0008

    Le PIC semble bloquer à 8 MHz

    Pour déterminer la fréquence qui ne peut pas "sortir" du composant j'ai fait un mini programme qui met successivement à 1 , deux broches en sortie pour de mesurer l'écart de temps à l'oscillo entre les 2 commutations:

    - Je tombe sur 500 ns malheureusement, alors que je devrais d'après moi être à 125 ns si le truc tournait à 32 MHz

    - J'ai aussi fait un essai avec un quartz externe pour voir si mon raisonnement était bon:
    >> Quartz 40 MHz :je tombe sur un écart de temps de 100 ns entre les commuts, ce qui veut bien dire qu'après avoir tout vérifié je n'arrive pas à faire tourner l'oscillateur interne à 32 MHz.

    Un autre PIC18F4525 a réagit pareil.

    Quelqu'un à déjà vu ça ? merci

    -----
    Ya un bon moyen de se tromper de solution: c'est de se tromper de problème.

  2. #2
    antek

    Re : Faire tourner un PIC 18F4525 à 32 MHz avec l'oscillateur interne...

    Un lien pour le PIC ?

  3. #3
    pierrel26

    Re : Faire tourner un PIC 18F4525 à 32 MHz avec l'oscillateur interne...

    Peut être il faut activer la pll après avoir actualisé les autres registres sinon pll est forcé à 0.

  4. #4
    Montd'est

    Re : Faire tourner un PIC 18F4525 à 32 MHz avec l'oscillateur interne...

    Merci,

    Ca va mieux, je ne sais pas pourquoi par contre...
    J'ai mis l'activation de PLL après.

    Mais les ennuis sont pas finis:
    J'arrive à faire marcher un afficheur avec le PIC mais pas tout le temps !

    Avec un quartz externe 40 MHz: ça affiche
    Avec l'oscillo interne réglé à 4 MHz + PLL (=16 MHz) ça affiche aussi
    Mais avec l'oscillo interne réglé à 8 MHz + PLL (= 32 MHz) l'afficheur affiche n'importe quoi...

    J'y comprends rien.
    Ya un bon moyen de se tromper de solution: c'est de se tromper de problème.

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

    Re : Faire tourner un PIC 18F4525 à 32 MHz avec l'oscillateur interne...

    Il faut revoir les délais dans l'initialisation et la fonction qui écrit sur LCD.

  7. #6
    Montd'est

    Re : Faire tourner un PIC 18F4525 à 32 MHz avec l'oscillateur interne...

    Citation Envoyé par spown Voir le message
    Il faut revoir les délais dans l'initialisation et la fonction qui écrit sur LCD.
    J'utilise un logiciel qui "fait tout", à priori je peux pas intervenir dans l'init ou autre...
    Ya un bon moyen de se tromper de solution: c'est de se tromper de problème.

  8. #7
    RISC

    Re : Faire tourner un PIC 18F4525 à 32 MHz avec l'oscillateur interne...

    Salut,

    Quel environnement de développement utilises-tu ?
    Quel compilateur ?
    Quel langage ?

    a+

  9. #8
    Montd'est

    Re : Faire tourner un PIC 18F4525 à 32 MHz avec l'oscillateur interne...

    Re,

    J'utilise Mikropascal (qui bug vraiment beaucoup d'ailleurs), langage pascal.
    Ya un bon moyen de se tromper de solution: c'est de se tromper de problème.

  10. #9
    invite03481543

    Re : Faire tourner un PIC 18F4525 à 32 MHz avec l'oscillateur interne...

    Salut mond'est.

    Si tu utilises Mikropascal tu dois déclarer ces paramètres dans l'éditeur de projet (prioritaire aux déclarations faites dans le code d'où ton conflit):

    -> Project-> Edit project puis tu sélectionnes la PLL
    Dans MCU Clock Freqency (à droite) tu mets directement la valeur désirée (tenant compte de la PLL)

    J'utilise Mikropascal, quel bug rencontres-tu?
    Dernière modification par HULK28 ; 07/02/2016 à 08h41.

  11. #10
    Montd'est

    Re : Faire tourner un PIC 18F4525 à 32 MHz avec l'oscillateur interne...

    Bj

    Citation Envoyé par HULK28 Voir le message

    Si tu utilises Mikropascal tu dois déclarer ces paramètres dans l'éditeur de projet (prioritaire aux déclarations faites dans le code d'où ton conflit):

    -> Project-> Edit project puis tu sélectionnes la PLL
    Dans MCU Clock Freqency (à droite) tu mets directement la valeur désirée (tenant compte de la PLL)
    J'avais sélectionné "Internal oscillator block, port function on RA6 and RA7"

    J'avais essayé d'entrer plusieurs fréquences dans la case (avec le paramètre ci dessus sélectionné) 8 MHz, 32 MHz et aussi laissé la case vide.
    Mais là ça va ( je ne sais pas pourquoi) le µC tourne à 32 MHz, mais ne sais pas faire tourner un afficher LCD quand on est sur 32 MHz.

    Les bugs:

    - Parfois quand je corrige une erreur et qu'après j'appuis sur "Build", le programme la voit encore, faut que je reclique une nouvelle fois sur "build" 20 à 30 secondes après pour que je logiciel voit la correction.

    - Parfois le logiciel plante et propose "redémarrer l'appli, continuer ou arrêter "

    - et autres trucs que j'ai pas en tête

    Incompréhensible, il marchait très bien ya quelque mois...
    Dernière modification par Montd'est ; 09/02/2016 à 05h07.
    Ya un bon moyen de se tromper de solution: c'est de se tromper de problème.

  12. #11
    invite03481543

    Re : Faire tourner un PIC 18F4525 à 32 MHz avec l'oscillateur interne...

    Il faudrait que je vois ton projet pour pouvoir t'y répondre plus précisément.
    Si tu le souhaites ici ou en MP.
    Pour tes problèmes de comportement curieux j'ai une fois rencontré cela, la cause était l'anti-virus.
    Essaye de le désactiver pour voir si ça perdure.
    @+

Discussions similaires

  1. Faire tourner un moteur tri 230 V avec une installation 400 V ?
    Par jercali dans le forum Bricolage et décoration
    Réponses: 14
    Dernier message: 04/08/2015, 19h37
  2. Réponses: 5
    Dernier message: 20/10/2013, 22h57
  3. faire tourner un moteur brushless 48 volt avec du 220 alternatif
    Par Eric DUPONT dans le forum Technologies
    Réponses: 67
    Dernier message: 04/08/2013, 17h18
  4. Faire tourner une machine avec les disques dur d'un portable.
    Par célplombier dans le forum Matériel - Hardware
    Réponses: 5
    Dernier message: 21/09/2011, 09h42
  5. Faire tourner Nunit 2.5 avec NAnt 0.86
    Par baconix dans le forum Logiciel - Software - Open Source
    Réponses: 1
    Dernier message: 01/07/2009, 15h04
Découvrez nos comparatifs produits sur l'informatique et les technologies.