cs_bibou1234
Messages postés5Date d'inscriptionmercredi 24 février 2010StatutMembreDernière intervention 1 novembre 2010
-
15 juin 2010 à 21:33
cs_patatalo
Messages postés1466Date d'inscriptionvendredi 2 janvier 2004StatutModérateurDernière intervention14 février 2014
-
16 juin 2010 à 19:40
Bonjour
j'ai un problème au niveau de la programmation en assembleur d'un pic16F690
J'ai trois fonctions a testé
-la détection des defauts pour la pression
-la detection des defauts pour la temperature
-et la batterie
Lorsque j'ai testé mes fonctions une par une elles marchent toutes correctement.
Lorsque je les met toute ensemble, ça ne marche plus.
J'ai cherché la fonction qui faisait tout buggé et il semble que ça soit la fonction qui teste la batterie.
Lorsque que je la met avec la fonction qui detecte les defauts de la pression et la fonction qui detecte les defauts pour la temperature, elle empeche les fonctions qui detecte les defauts de fonction. on dirait qu'elle les bloque.
Je n'arrive pas à voir ce qui fait buggé, j'ai re verifié chaque ligne du programme, verifier les valeurs des registres. et je dois rendre la programmation pour vendredi :s
Mavaleur3: ;On est inférieur à 2,2V donc on détecte aucun défaut
movf result,w
sublw 0x70
btfss STATUS,C
goto Mavaleur4
bsf PORTC,1
goto Start1
;
Mavaleur4: ;On est inférieur à 3.15V donc on détecte le défaut « ILL »
movf result,w
sublw 0xA1
btfss STATUS,C
goto Mavaleur5
bsf PORTC,2
bsf PORTC,4
goto Start1
Mavaleur5: ;On est inférieur à 3.55V donc on détecte le défaut « OC »
movf result,w
sublw 0xB5
btfss STATUS,C
goto Mavaleur6
bsf PORTC,2
bsf PORTC,3
goto Start1
Mavaleur6: ;On est inférieur à 4.8V donc on détecte le défaut « ILL »
movf result,w
sublw 0xF5
btfss STATUS,C
goto Mavaleur7
bsf PORTC,2
bsf PORTC,4
goto Start1
Mavaleur7: ;On est inférieur à 5V donc on détecte le défaut « SCBAT
movf result,w
sublw 0xFF ;On soustrait 0xFF à « result »
btfss STATUS,C
goto Start
bsf PORTC,2
bsf PORTC,6
goto Start1
;detection des defauts pour la temperature
Start1:
cs_patatalo
Messages postés1466Date d'inscriptionvendredi 2 janvier 2004StatutModérateurDernière intervention14 février 20142 16 juin 2010 à 19:40
salut,
essai peut-être de mettre un goto à la fin de ta fonction, si jamais ton compilo aligne les fonction, il y a peut-être une instruction qui est executée sans que tu le sache.