julien__68
Messages postés5Date d'inscriptionmardi 24 mai 2005StatutMembreDernière intervention 7 juin 2005
-
30 mai 2005 à 10:13
nounou2006merci
Messages postés2Date d'inscriptionmercredi 27 décembre 2000StatutMembreDernière intervention20 mai 2010
-
20 mai 2010 à 15:49
bonjours a tous,
j'utilise un pic18f4620, je débute dans la programmation,
je voulai réaliser une interruption sur rb0 , si quelqu'un pouvai me dire mon erreure pasque je suis bloqué la ...
mon programme reste bloqué dans le sleep , et l appuie sur rb0 n'a aucun effet,
voila mon programme:
list p=18f4620
#include p18f4620.inc
ORG 0
goto init
;****** Le programme d' interruption se déclenche ***
;****** lorsque l' entrée RB0 passe de 0 à 1 ***
ORG 4
;*********** Programme d 'interruption **********************
bsf PORTB,1 ; on allume la led connectée sur rb1
bcf INTCON,INT0IF ; on remet à 0 le bit du registre d' IT qui est passé à 1
RETFIE
; retour d 'interruption
;************* Programme d' INIT **************************
init
; -> broches en entrée ou en sortie )
MOVLW B'10011001' ; rb0,rb3,rb4 en entrée ( rb0 sera la broche utilisée
; pour l ' interruption )
MOVWF TRISB
bsf INTCON2,INTEDG0 ; Le passage de 0 à 1 sur RB0 provoque une IT
; sur un front montant
bsf
INTCON,INT0IE
; autorise l ' IT sur RB0
bsf
INTCON,GIE
; autorise les Interruptions
clrf PORTB
;************ Programme principal en rebouclage *********************
debut
sleep
; mise en sommeil du PIC conso : 3.2 mA, attente impulsion sur RB0
phenojeff
Messages postés87Date d'inscriptionjeudi 10 octobre 2002StatutMembreDernière intervention 4 avril 2008 30 mai 2005 à 17:43
la ca marche en Mplab mais oublie pas de maitre les bits _OPTION
list p=18f4620
#include p18f4620.inc
ORG 0x0000
goto init
;****** Le programme d' interruption se déclenche ***
;****** lorsque l' entrée RB0 passe de 0 à 1 ***
; TAVAIS des ERREUR sur tes ORG
ORG 0x0008
;*********** Programme d 'interruption **********************
bsf PORTB,1 ; on allume la led connectée sur rb1
bcf INTCON,INT0IF ; on remet à 0 le bit du registre d' IT qui est passé à 1
RETFIE ; retour d 'interruption
;************* Programme d' INIT **************************
init
; ICI aussi ne pas oublier de configurer les pins
MOVLW 07h ; Configure A/D
MOVWF ADCON1 ; en digital inputs
MOVWF 07h ; Configure comparators
MOVWF CMCON ; pour digital input
; -> broches en entrée ou en sortie )
MOVLW B'10011001' ; rb0,rb3,rb4 en entrée ( rb0 sera la broche utilisée
; pour l ' interruption )
MOVWF TRISB
bsf INTCON2,INTEDG0 ; Le passage de 0 à 1 sur RB0 provoque une IT
; sur un front montant
bsf INTCON,INT0IE ; autorise l ' IT sur RB0
bsf INTCON,GIE ; autorise les Interruptions
clrf PORTB
;************ Programme principal en rebouclage *********************
debut
sleep ; mise en sommeil du PIC conso : 3.2 mA, attente impulsion sur RB0
phenojeff
Messages postés87Date d'inscriptionjeudi 10 octobre 2002StatutMembreDernière intervention 4 avril 2008 30 mai 2005 à 17:48
re
dans ton interuption ca te prendrait un anti - rebon tout ca que tu fait tu attend que la pin revienne a sa position 0 et la tu continu le temps de pressé un bouton le pic lui va avoir fait 15 fois le tour bien plus rapide que le doigt.