Salut,
 
Merci pour ta participation,
 
voici le code:
 
; clignotements de led's sur RB1,RB2,RB3 avec un switch
 
; Configuration
 
  LIST P=16F84A;                      Type de processeur
  #INCLUDE <p16F84A.inc>;             Définition des registres
 
; Définitions
 
  RP0 EQU 5;
  RB1 EQU 0X01;                       Port B, sortie RB1
  RB2 EQU 0X02;                       Port B, sortie RB2
  RB3 EQU 0X03;                       Port B, sortie RB3
  RA0 EQU 0X00;                       Port A, sortie RA0
 
; Variables
   
  CBLOCK 0X0C;
  vTempo1, vTempo2;
  ENDC;
 
; Vecteurs
 
  ORG H'0000';                        Déclaration du reset
  GOTO Start;                         Passe à Start
 
; Tempo de clignotement des leds
 
Tempo   MOVLW 0XFF;                   Charge W avec 0XFF
        MOVWF vTempo2;                Pour charge la vtempo2
_Tempo2 MOVWF vTempo1;                Ainsi que la vtempo1
_Tempo1 DECFSZ vTempo1, f;            Décrémente vtempo et met le résultat
        GOTO _Tempo1;                 Puis saute l'instruction suivante
        DECFSZ vTempo2, f;
        GOTO _Tempo2;
        RETURN;
 
; Programme principal
 
Start BSF STATUS, RP0;                Accès bank 1
      MOVLW 0XF1;                     Charge avec 0XF1
      MOVWF TRISB;                    Pour le TRIS B
      MOVLW 0XFF;                     Charge avec 0XFF
      MOVWF TRISA;                    Pour le TRIS A
 
; Les deux boucles pour le bon fonctionnement du switch
 
       BCF STATUS, RP0;               Accès bank 0
       BTFSS PORTA, RA0;              Interrupteur sur RA0
       GOTO Boucle;                   On passe à Boucle                
       GOTO Boucledeux;               On passe à Boucledeux
Boucle BSF PORTB, RB1;                On éteint RB1
       BCF PORTB, RB2;                On allume RB2
       BSF PORTB, RB3;                On éteint RB3
       CALL Tempo;                    On appelle vtempo
       BSF PORTB, RB1;                On éteint RB1
       BSF PORTB, RB2;                On éteint RB2
       BSF PORTB, RB3;                On éteint RB3
       CALL Tempo;                    On appelle vtempo
       BTFSS PORTA, RA0;              Interrutpeur sur RA0
       GOTO Boucle;                   On passe à Boucle
 
Boucledeux BCF PORTB, RB1;            On allume RB1
           BSF PORTB, RB2;            On éteint RB2
           BCF PORTB, RB3;            On allume RB3
           CALL Tempo;                On appelle vtempo
           BSF PORTB, RB1;            On éteint RB1
           BSF PORTB, RB2;            On éteint RB2
           BSF PORTB, RB3;            On éteint RB3
           CALL Tempo;                On appelle vtempo
           BTFSS PORTA, RA0;          Interrupteur sur RA0
           GOTO Boucle;               On passe à Boucle
           GOTO Boucledeux;           On passe à Boucledeux
           END;
 
C'est fort problable qu'il y ait des erreurs dans mes commentaires !
 
Merci à toi