theyoupione
Messages postés2Date d'inscriptionvendredi 27 février 2004StatutMembreDernière intervention16 juin 2004
-
16 juin 2004 à 12:41
phenojeff
Messages postés87Date d'inscriptionjeudi 10 octobre 2002StatutMembreDernière intervention 4 avril 2008
-
16 juin 2004 à 16:17
j'ai écri un ptit prog dont voici un extrait permettant d'envoyer un octet vers liaison série mais j'ai un pb lors de la compilation avec mplab
l'erreur est la ligne suivante:
btfsc STATUS , C
extrai:
movwf ALTITUDE ; rs_octet = octet à envoyer
movlw 8 ; 8 bits
movwf CPTR_BIT_TEMP ; compteur de bits envoyés nbre de bits de donné de la liaison série
bcf PORTB,7 ; bit de start
call RSdelai ; tempo
rrf ALTITUDE,f ; rotation vers la droite on recupere dans C le bit à envoyer
btfsc STATUS , C ; on teste bit à envoyer = 1 ?
goto $+3 ; oui
bcf PORTB,7 ; sinon 0
goto $+2 ; on continue sur la tempo
bsf PORTB,7 ; bit à 1
call RSdelai ; tempo
decfsz 1,f ; on decremente le compteur de bits envoyés attention je suis pas sûr du 1
goto $-8 ; on continue sur les bits suivants
bsf PORTB,7 ; bit de stop
call RSdelai ; tempo pour bit de stop
call RSdelai ; tempo de sécurité
return ; les 8 bits sont envoyés
RSdelai movlw RS_delay ; temporisation de la durée d'un bit
movwf RS_tmp
decfsz RS_tmp,f
goto $-1
phenojeff
Messages postés87Date d'inscriptionjeudi 10 octobre 2002StatutMembreDernière intervention 4 avril 2008 16 juin 2004 à 16:17
ALTITUDE ? est bien une variable
a movlw 8 mais movlw .8
decfsz 1,f ; on decremente le compteur de bits
ton compteur est CPTR_BIT_TEMP
decfsz CPTR_BIT_TEMP,F ; si 0 saute
le btfsc STATUS,C est bon mais ca peu venir des ligne avant ALTITUDE regarde dans mplab si elle te donne bien quelque chose dedans mais corige le decfsz 1,f avant