Aide sur PIC 16f84

Rou25 Messages postés 16 Date d'inscription lundi 30 octobre 2006 Statut Membre Dernière intervention 10 juin 2009 - 7 nov. 2006 à 09:20
phenojeff Messages postés 87 Date d'inscription jeudi 10 octobre 2002 Statut Membre Dernière intervention 4 avril 2008 - 7 nov. 2006 à 16:35
salut a tout le monde,

je suis actuellement etudiant genie electrique entammant la phase finale de mes etudes, actuellement jai eu un projet a faire donc jaurai besoin du microprocesseur 16f84.  jai appris la base et finalement jai ecris un petit programme pour simuler  mais ca ne fonctionne pas comme prevu.

en effet le microprocesseur sera relié avec un portable, le programme que jai ecris doit etre utilisé pour taper lestouches sur mon portable.  le but cest de composer un numéro et dappler ce numero en question. mais le bleme cest que il compose le numero en desordre et au lieu dappler, il reboucle le programme et ceci infiniment. 

lexemple de ce programme se trouve en bas, si quelquun arrive a trouver la faille, je serai tres reconnaissant et toute aide serai la bienvenue! apparemment jai du oublier un ou deux parametres et que jarrive pas a resoudre car je connais pas tout les syntaxes du PIC

merci a vous tous et toutes!

2 réponses

Rou25 Messages postés 16 Date d'inscription lundi 30 octobre 2006 Statut Membre Dernière intervention 10 juin 2009
7 nov. 2006 à 09:21
 


 


STATUS   equ    03h
TRISA    equ    85h
TRRISB   equ    86h
PORTA    equ    05h
PORTB    equ    06h
COUNT    equ    08h


;======================


BSF     STATUS,5


MOVLW   00h


MOVWF   TRISA


MOVLW   00h


MOVWF   TRISB


BCF     STATUS,5


;=====================


MOVLW   b'0001'


MOVWF   PORTA


call DELAY


;=====================


MOVLW   b'0001'


MOVWF   PORTA


call DELAY


;=====================


MOVLW   b'0010'


MOVWF   PORTA


call DELAY


;=====================


MOVLW   b'0100'


MOVWF   PORTA


call DELAY


;=====================


MOVLW   b'1000'


MOVWF   PORTA


call DELAY


;=====================


MOVLW   b'00000001'


MOVWF   PORTB


call DELAY


;=====================


MOVLW   b'00000010'


MOVWF   PORTB


call DELAY


;=====================


MOVLW   b'00000100'


MOVWF   PORTB


call DELAY


;=====================


MOVLW   b'00001000'


MOVWF   PORTB


call DELAY


;=====================


DELAY


Loop1


decfsz   COUNT,1


goto     Loop1


return


;=====================


end
0
phenojeff Messages postés 87 Date d'inscription jeudi 10 octobre 2002 Statut Membre Dernière intervention 4 avril 2008
7 nov. 2006 à 16:35
Bonjour  le probleme de boucle est que tu na pas de fin a ton programme
MOVLW   b'00001000'

MOVWF   PORTB

call DELAY

;=====================

FIN
nop
goto FIN

;=====================
DELAY

Loop1

decfsz   COUNT,1

goto     Loop1

return
0
Rejoignez-nous