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

anomalie de pull up sur 16f690



  1. #1
    alainav1

    anomalie de pull up sur 16f690

    Bonjour,
    d'apers la data sheet (si j'ai bien compris ?)
    pour configurer les entrée en digitale on utilise les registres ansel et anselh

    ansel =%00000000
    anselh =%00000000

    ça marche !
    pour configurer certaines entrée en pull up il faut option.rabpu=0 et configurer les registres wpua et wpub suivant les entrées à mettre au niveau haut
    le registre wpua= %b7,b6,b5,b4,b3,b2,b1,b0 configure respectivement les entrée x,x,a5,a4,x,a2,a1,a0 en pull
    tout fonctionne saul pour a5
    quand je configure a5 seul a5 est en pul upp les autres entées a4,a2,a1,a0 repassent sans pull up
    je réalise cet opération en basic (sous pic simulator )
    est ce un probleme lié au logiciel ou un probleme lié au pic ?
    avez vous eu le même probleme si vous codez en assembleur ?
    cordialement
    Alain

    -----

    Décider de faire, c'est bien . Décider quand, c'est mieux !

  2. Publicité
  3. #2
    HULK28

    Re : anomalie de pull up sur 16f690

    Bonsoir,

    /RABPU doit être mis préalablement à 1 (OPTION_REG <bit7>) puis tu actives par le registre WPUA chaque pull-up désiré.
    Il faut bien entendu que ton port A soit déclaré en ENTREE, c'est uniquement dans ce cas que le pull-up restera activé, sinon il sera désactivé automatiquement en SORTIE.
    Tout est bien qui finit.

  4. #3
    alainav1

    Re : anomalie de pull up sur 16f690

    c'est bien ce que j'ai fait
    sauf pour OPTION-REG<7> que j'ai mis à 0 c'est ce que j'ai compris sur la datasheet
    http://ww1.microchip.com/downloads/e...Doc/41262A.pdf page 48

    si je met OPTION-REG<7>=1 rien n'est pris en compte (c'est e que je constate sur le simulateur )

    j'ai successivement passer A.1 pis A.2 puis A.4 (car A.3 n'est pas configurable en pull up )tout ce passe comme prevu et quand j'ajoute A.5 A.5 passe en pull up mais A.1 ,A.2 et A.3... repasse en normal c'est du moins se ce que je constate sur le simulteur .
    estce un probleme de simulateur ou réel (jusqu'à maintenant j'ai toujours retrouvé une coherence entre toutes les simualtion et le réel .
    je vais cabler sur une platine d'essai mais comme savoir qu'une entrée est en pull up (si je mesure 5V c'est pas forcement un pull up c'est peu etre un etat aléatoire ?
    codialement
    Alain
    Décider de faire, c'est bien . Décider quand, c'est mieux !

  5. #4
    HULK28

    Re : anomalie de pull up sur 16f690

    Sur la doc il est écrit: Global RABPU must be enabled for individual pull-ups to be enabled.

    Il n'y a donc pas de doute sur cette directive, RABPU doit ête positionné à 1 pour activer les pull-up.
    Mais le bit étant barré (/RABPU), on voit sur le schéma que l'entrée de la porte est inversée, c'est donc bien un 0 qui doit être entré, tu as raison.
    C'est d'ailleurs confirmé sur l'info registre OPTION_REG page 70.
    Tout est bien qui finit.

  6. #5
    HULK28

    Re : anomalie de pull up sur 16f690

    Je pense qu'il doit y avoir dans ton code quelque chose qui désactive les pull-up.
    Tout est bien qui finit.

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

    Re : anomalie de pull up sur 16f690

    Salut,

    J'ai l'impression que c'est peut-être la "compilation" BASIC vers assembleur qui pose problème.
    As-tu la possibilité de voir sous ton envirnnement BASIC les instructions assembleur générées pour chaque ligne de BASIC ?

    (C'est possible avec le compilateur XC8 et cela permet parfois de trouver des erreurs du compilateur)

    Quel environnement de développement utilises-tu ?

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

  9. Publicité
  10. #7
    alainav1

    Re : anomalie de pull up sur 16f690

    bonjour,
    je viens de decouvrir mon erreur
    j'ai mal interpreté les entrées(confusion entre les entrée analogique(AN1) et le nom des entrée A1 ,A2 ..
    voici les quelques lignes qui configurent le maximum s'entrée en pull up (9)
    TRISA = %11111111
    TRISB = %11111111
    TRISC = %11111111
    ANSEL = %00000000 'C3,C2,C1,C0,A4,A2,A1,A0
    ANSELH = %00000000 'X,X,X,X,B5,B4,C7,C6
    WPUA = %00110111 'pull up X,X,A5,A4,X,A2,A1,A0
    WPUB = %11110000 'pull up B7,B6,B5,B4,X,X,X,X
    OPTION_REG = %00000000 'b7=0 pour activer les pull up

    j'utilise pic simulator
    Dernière modification par alainav1 ; 12/03/2015 à 15h22.
    Décider de faire, c'est bien . Décider quand, c'est mieux !

Sur le même thème :

Discussions similaires

  1. anomalie du géoide et anomalie isostatique
    Par artemis19 dans le forum Géologie et Catastrophes naturelles
    Réponses: 0
    Dernier message: 14/11/2014, 17h28
  2. Réponses: 12
    Dernier message: 19/01/2012, 15h32
  3. [Pic 16F690] Signal pwm
    Par Tripic dans le forum Électronique
    Réponses: 8
    Dernier message: 29/08/2010, 23h16
  4. besoin d'aide!pic 16f690
    Par toumastik dans le forum Électronique
    Réponses: 2
    Dernier message: 27/05/2010, 17h48
  5. pull up, pull down et courant consommé
    Par meliokan dans le forum Électronique
    Réponses: 28
    Dernier message: 07/10/2007, 21h05