PIC F88 : Pb valeur variable (assembleur)
Répondre à la discussion
Affichage des résultats 1 à 8 sur 8

PIC F88 : Pb valeur variable (assembleur)



  1. #1
    invite61268a46

    PIC F88 : Pb valeur variable (assembleur)


    ------

    Bonjours à tous,

    Je suis en train d’apprendre par mes propres moyens l’utilisation du PIC 16f88. Donc par pitié soyez indulgeants.

    J’ai fait un programme en assembleur qui allume 2 LED, puis 2 autres et enfin encore 2 autres.
    Le programme compile sans erreur.=> OK
    Quand je simule le programme, le port B à la bonne valeur (vérification sur watch de MPlab Sim) => OK

    Entre 2 allumages de LED, j’aimerai bien mettre une tempo pour visualiser les LED.

    Je me suis inspiré de la tempo de Bigonoff, mais j’ai un soucis :

    1) je n’arrive pas à quitter la tempo
    2) quand je visualise les valeurs des variables de la tempo elles ne sont jammais à 1111 11111 mais à 11000000

    Je n'arrive pas à cerné le problème : j'ai essayé de definir les variables avec un define, y a le même problème, mettre des org dans les sous-programme pour être sur de ne pas écrire dessus, rien a faire!
    Merci de votre aide


    Voici le programme de la tempo :
    Declaration :
    CBLOCK 0x00C ; début de la zone variables
    cmpt1 : 1 ; Zone de 1 byte pour compteur
    cmpt2 : 1 ; Zone de 1 byte pour compteur
    cmpt3 : 1 ; Zone de 1 byte pour compteur
    ENDC
    Sous programme :
    tempo
    movlw 0x2 ; pour 2 boucles
    movwf cmpt3 ; initialiser compteur3
    boucle3
    movlw 0xFF ; pour 2 boucles
    movwf cmpt2 ; initialiser compteur3
    boucle2
    movlw 0xFF ; pour 2 boucles
    movwf cmpt1 ; initialiser compteur3;
    boucle1
    nop ; perdre 1 cycle
    decfsz cmpt1,f ; décrémenter compteur1
    goto boucle1 ; si pas 0, boucler
    decfsz cmpt2,f ; si 0, décrémenter
    goto boucle2 ; si cmpt2 pas 0,
    decfsz cmpt3,f ; si 0, décrémenter
    goto boucle3 ; si cmpt3 pas 0,
    return ; retour de la sous-routine

    Appel sous-programme:
    ....
    call tempo
    ....

    -----

  2. #2
    invitef86a6203

    Re : PIC F88 : Pb valeur variable (assembleur)

    post ton programme complet , l'erreur est sans doute ailleurs...

  3. #3
    invite61268a46

    Re : PIC F88 : Pb valeur variable (assembleur)

    Voici le programme entier
    Fichiers attachés Fichiers attachés

  4. #4
    invite61268a46

    Re : PIC F88 : Pb valeur variable (assembleur)

    Je crois que j'ai trouvé mon erreur!
    C'est la reservation des valeurs à 0C qui est en fait un registre!

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

    Re : PIC F88 : Pb valeur variable (assembleur)

    Bonjour monpseudo

    J'ai fait presque le même programme que toi avec un PIC84, mais la tempo ne ressemble pas aussi j'aurais voulu voir ton "essai txt" mais comment le télécharger? En cliquant dessus à droite ou à gauche, cela ne donne rien. Merci
    pont

  7. #6
    invitef86a6203

    Re : PIC F88 : Pb valeur variable (assembleur)

    l'adresse 0x0c est libre donc OK

    Dans ta config tu met _LP_OSC c'est réservé au 32khz , tu le fais fonctionner en
    32Khz ?
    à l'adresse 0X004 tu devrais mettre un retfie

    Les ORG 0x40, 0x60 sont superflues

  8. #7
    invite61268a46

    Re : PIC F88 : Pb valeur variable (assembleur)

    Oui, je le fait tourner à 32 KHz pour économiser de la consommation.

    Oui org 0x60 et 0x40 sont superflux, c'est un reste de test car je pensais écrire sur le début du programme.

    Par contre j'ai encore un souci :

    J'utilise les ports RB1 => RB6
    Or pour le port RB6, la LED ne s'allume pas (les autres ports s'allument)
    Or ce n'est pas un problème hard, ce n'est pas un problème d'activation du Bit.
    Comme RB6 est multiplexé avec AN5 je pensais à le définir en digital
    movlw 0x00
    movwf ANSEL
    movlw 0x00
    movwf ADCON0
    Mais ça ne fonctionne toujours pas!

  9. #8
    invite61268a46

    Re : PIC F88 : Pb valeur variable (assembleur)

    Finalement, c'est bien un problème hard : besoin d'une resistance de pull-up sur RB6

Discussions similaires

  1. [PIC] Prog en assembleur 18f4320
    Par invite8aaf941b dans le forum Électronique
    Réponses: 21
    Dernier message: 24/09/2010, 15h48
  2. Assembleur pour PIC - BTFSC
    Par Toufinet dans le forum Électronique
    Réponses: 12
    Dernier message: 11/03/2008, 08h29
  3. Assembleur PIC : faire un goto "variable"
    Par Toufinet dans le forum Électronique
    Réponses: 9
    Dernier message: 04/03/2008, 14h40
  4. truc en langage assembleur PIC
    Par invite412b515c dans le forum Électronique
    Réponses: 0
    Dernier message: 04/06/2007, 21h05
  5. Programmation assembleur sur PIC
    Par inviteebefde8d dans le forum Électronique
    Réponses: 0
    Dernier message: 19/03/2007, 10h38
Dans la rubrique Tech de Futura, découvrez nos comparatifs produits sur l'informatique et les technologies : imprimantes laser couleur, casques audio, chaises gamer...