Répondre à la discussion
Affichage des résultats 1 à 25 sur 25

exemple de programme pour allumer une led et le faire clignoter avec le pic 16F876



  1. #1
    abdoucasa

    exemple de programme pour allumer une led et le faire clignoter avec le pic 16F876


    ------

    si il y a quelqu'un qui peut me donner l'exemlpe d'un programme qui fait allumer une led ou bien la clignoter avec le pic 16F876

    -----

  2. Publicité
  3. #2
    vede

    Cool Re : exemple de programme pour allumer une led et le faire clignoter avec le pic 16F876

    Citation Envoyé par abdoucasa Voir le message
    si il y a quelqu'un qui peut me donner l'exemlpe d'un programme qui fait allumer une led ou bien la clignoter avec le pic 16F876
    re ;O]

    un exemple très très court (donc facilement transposable) et commenté,
    qui fait clignoter une led sur PortA en utilisant l'interruption du Timer1,
    dans le post n° #18 de ce fil :
    http://forums.futura-sciences.com/el...pic16f690.html

    vede
    ;O]

    ps :
    sinon tape "cours BigOnOff" dans google...
    c'est un des premiers exemple des cours..

  4. #3
    f6bes

    Re : exemple de programme pour allumer une led et le faire clignoter avec le pic 16F876

    Citation Envoyé par abdoucasa Voir le message
    si il y a quelqu'un qui peut me donner l'exemlpe d'un programme qui fait allumer une led ou bien la clignoter avec le pic 16F876
    Bsr à toi,
    si il y a quelqu'un qui peut me donner l'exemlpe d'un programme qui fait
    BONJOURet MERCI lorsqu'on sollicite les foromeurs.
    A+

  5. #4
    Gérard

    Re : exemple de programme pour allumer une led et le faire clignoter avec le pic 16F876

    Une seule réponse : Bigonoff, à lire et à comprendre !

  6. A voir en vidéo sur Futura
  7. Comparatifs

    Gagnez du temps et de l'argent grâce à nos comparatifs de produits. Parmi nos sujets :
  8. #5
    abdoucasa

    Re : exemple de programme pour allumer une led et le faire clignoter avec le pic 16F876

    Citation Envoyé par vede Voir le message
    re ;O]

    un exemple très très court (donc facilement transposable) et commenté,
    qui fait clignoter une led sur PortA en utilisant l'interruption du Timer1,
    dans le post n° #18 de ce fil :
    http://forums.futura-sciences.com/el...pic16f690.html

    vede
    ;O]

    ps :
    sinon tape "cours BigOnOff" dans google...
    c'est un des premiers exemple des cours..
    le probléme c que moi je veuxun programme écrit en langage machine ctd assembleur

  9. #6
    vede

    Cool Re : exemple de programme pour allumer une led et le faire clignoter avec le pic 16F876

    Citation Envoyé par abdoucasa Voir le message
    le probléme c que moi je veuxun programme écrit en langage machine ctd assembleur
    bon ben je répète...
    BIGONOFF
    tout est expliqué dedans...
    avec exemples...
    ...

  10. Publicité
  11. #7
    abdoucasa

    Re : exemple de programme pour allumer une led et le faire clignoter avec le pic 16F876

    Citation Envoyé par vede Voir le message
    bon ben je répète...
    BIGONOFF
    tout est expliqué dedans...
    avec exemples...
    ...
    si vous pouvez me donner un site qui regroupe tous les cours de bigonoff particuliérement les cours de 16F876

  12. #8
    vede

    Cool Re : exemple de programme pour allumer une led et le faire clignoter avec le pic 16F876

    Citation Envoyé par abdoucasa Voir le message
    si vous pouvez me donner un site qui regroupe tous les cours de bigonoff particuliérement les cours de 16F876
    re ;O]

    http://www.abcelectronique.com/bigonoff/index.php

    et ya ça aussi (entres autres, cici google)

    http://pagesperso-orange.fr/fabrice....ic_accueil.htm

    vede
    ;O]

  13. #9
    vede

    Cool Re : exemple de programme pour allumer une led et le faire clignoter avec le pic 16F876

    ps : après te fais pas de souci, car tous les cours pour la gamme 16Fxxx
    (84,88,877...) sont compatibles avec le 876... car ils se programment
    tous exactement de la même façon...

  14. #10
    vede

    Cool Re : exemple de programme pour allumer une led et le faire clignoter avec le pic 16F876


  15. #11
    freepicbasic

    Re : exemple de programme pour allumer une led et le faire clignoter avec le pic 16F876

    Prog qui fait clignoter tous les ports du pic16F876 période de 400ms.
    pas d'int bien que la procédure de gestion d'int soit présente.
    bits de config 0x3F3A HS, pas de WD, pas de LP, pas de CP
    Fichiers attachés Fichiers attachés
    A+, pat

  16. #12
    abdoucasa

    Re : exemple de programme pour allumer une led et le faire clignoter avec le pic 16F876

    Citation Envoyé par freepicbasic Voir le message
    Prog qui fait clignoter tous les ports du pic16F876 période de 400ms.
    pas d'int bien que la procédure de gestion d'int soit présente.
    bits de config 0x3F3A HS, pas de WD, pas de LP, pas de CP
    par exemple si je veux simuler le programme que tu m'aa donner sur isis je dois mettre des leds dans toutes les prorts ou koi?

  17. Publicité
  18. #13
    abdoucasa

    Re : exemple de programme pour allumer une led et le faire clignoter avec le pic 16F876

    Citation Envoyé par abdoucasa Voir le message
    par exemple si je veux simuler le programme que tu m'aa donner sur isis je dois mettre des leds dans toutes les prorts ou koi?
    pour l'instruction _DELAYMS est elle déja défini dans le pic 16F876?

  19. #14
    freepicbasic

    Re : exemple de programme pour allumer une led et le faire clignoter avec le pic 16F876

    Citation Envoyé par abdoucasa Voir le message
    pour l'instruction _DELAYMS est elle déja défini dans le pic 16F876?
    non, mais elle est dans le prog .
    Regarde bien !

    Code:
    _DELAYMS
    	movwf	_RAM1
    	clrf	_RAM
    pb_lab11
    	nop
    	nop
    	decfsz	_RAM,F
    	goto	pb_lab11
    	decfsz	_RAM1,F
    	goto	pb_lab11
    	retlw	0
    Dernière modification par freepicbasic ; 01/04/2010 à 07h55.
    A+, pat

  20. #15
    freepicbasic

    Re : exemple de programme pour allumer une led et le faire clignoter avec le pic 16F876

    Citation Envoyé par abdoucasa Voir le message
    par exemple si je veux simuler le programme que tu m'aa donner sur isis je dois mettre des leds dans toutes les prorts ou koi?
    Une seule suffit, mais tu en autant que tu veux.
    De toute façon sur la simule, les ports clignotent aussi même sans led.
    A+, pat

  21. #16
    abdoucasa

    Re : exemple de programme pour allumer une led et le faire clignoter avec le pic 16F876

    Citation Envoyé par freepicbasic Voir le message
    Une seule suffit, mais tu en autant que tu veux.
    De toute façon sur la simule, les ports clignotent aussi même sans led.
    ok merci j'ai bien compris votre programme mais une derniére questionne pour n'importe quel programme quel sont les instructions qui doivent étre cités toujours??????

  22. #17
    freepicbasic

    Re : exemple de programme pour allumer une led et le faire clignoter avec le pic 16F876

    Pour le PIC16F876
    Une structure minimale
    Code:
      ORG 0h
    	goto _START_PIC
    	nop
    	nop
    	nop
    	RETFIE
    
    
    
    _START_PIC
    ;
    ;
    ; programme principal
    ;
    ;
    ;
       goto _START_PIC
    
    
    
    	end


    UNE autre avec l'intrerrupt
    Code:
    w_temp  	EQU 071H ; svg registre W
    status_temp	EQU 072H ; svg status swappé
    FSR_temp	EQU 073H ; svg FSR
    PCLATH_temp	EQU 074H ; svg PCLATH
      ORG 0h
    	goto _START_PIC
    	nop
    	nop
    	nop
    	movwf	w_temp  	; sauver registre W
    	swapf	STATUS,w	; swap status avec résultat dans w
    	movwf	status_temp	; sauver status swappé
    	movf	FSR , w		; charger FSR
    	movwf	FSR_temp	; sauvegarder FSR
    	movf	PCLATH, w	; charger PCLATH
    	movwf	PCLATH_temp	; sauvegarder PCLATH
    	clrf	PCLATH		; passer en Page 0
    	GOTO	_INT_PIC
    _START_PIC
    ;
    ;
    ; programme principal
    ;
    ;
    ;
       goto _START_PIC
    
    
    
    _INT_PIC
    ;
    ;
    ; programme interruption
    ;
    ;
    ;
    
    
    restorereg
    	movf	PCLATH_temp, w	; charger PCLATH sauvé
    	movwf	PCLATH	    	; restaurer PCLATH 
    	movf	FSR_temp , w	; charger FSR sauvé
    	movwf	FSR		        ; restaurer FSR
    	swapf	status_temp,w	; swap ancien status, résultat dans w
    	movwf   STATUS		; restaurer status
    	swapf   w_temp,f	    ; Inversion L et H de l'ancien W
    				; sans modifier Z
    	swapf   w_temp,w  	; Réinversion de L et H dans W
    				; W restauré sans modifier status
    	RETFIE
    	end
    A+, pat

  23. #18
    abdoucasa

    Re : exemple de programme pour allumer une led et le faire clignoter avec le pic 16F876

    Citation Envoyé par freepicbasic Voir le message
    Pour le PIC16F876
    Une structure minimale
    Code:
      ORG 0h
    	goto _START_PIC
    	nop
    	nop
    	nop
    	RETFIE
    
    
    
    _START_PIC
    ;
    ;
    ; programme principal
    ;
    ;
    ;
       goto _START_PIC
    
    
    
    	end


    UNE autre avec l'intrerrupt
    Code:
    w_temp  	EQU 071H ; svg registre W
    status_temp	EQU 072H ; svg status swappé
    FSR_temp	EQU 073H ; svg FSR
    PCLATH_temp	EQU 074H ; svg PCLATH
      ORG 0h
    	goto _START_PIC
    	nop
    	nop
    	nop
    	movwf	w_temp  	; sauver registre W
    	swapf	STATUS,w	; swap status avec résultat dans w
    	movwf	status_temp	; sauver status swappé
    	movf	FSR , w		; charger FSR
    	movwf	FSR_temp	; sauvegarder FSR
    	movf	PCLATH, w	; charger PCLATH
    	movwf	PCLATH_temp	; sauvegarder PCLATH
    	clrf	PCLATH		; passer en Page 0
    	GOTO	_INT_PIC
    _START_PIC
    ;
    ;
    ; programme principal
    ;
    ;
    ;
       goto _START_PIC
    
    
    
    _INT_PIC
    ;
    ;
    ; programme interruption
    ;
    ;
    ;
    
    
    restorereg
    	movf	PCLATH_temp, w	; charger PCLATH sauvé
    	movwf	PCLATH	    	; restaurer PCLATH 
    	movf	FSR_temp , w	; charger FSR sauvé
    	movwf	FSR		        ; restaurer FSR
    	swapf	status_temp,w	; swap ancien status, résultat dans w
    	movwf   STATUS		; restaurer status
    	swapf   w_temp,f	    ; Inversion L et H de l'ancien W
    				; sans modifier Z
    	swapf   w_temp,w  	; Réinversion de L et H dans W
    				; W restauré sans modifier status
    	RETFIE
    	end
    j'ai pas compris une chose par exemple ici

    goto _START_PIC
    nop
    nop
    nop
    movwf w_temp ; sauver registre W
    swapf STATUS,w ; swap status avec résultat dans w
    movwf status_temp ; sauver status swappé
    movf FSR , w ; charger FSR
    movwf FSR_temp ; sauvegarder FSR
    movf PCLATH, w ; charger PCLATH
    movwf PCLATH_temp ; sauvegarder PCLATH
    clrf PCLATH ; passer en Page 0
    GOTO _INT_PIC
    _START_PIC
    il y a au début l'instruction goto _start_pic c veut dire le programme principal va étre exécuté mais a la fin du programme principal on trouve l'instruction goto _start_pic ca veut dire le programme va étre exécuté de nouveau mais mon probléme c que j'arrive pas a comprendre comment le programme va retourne ici

    nop
    nop
    nop
    movwf w_temp ; sauver registre W
    swapf STATUS,w ; swap status avec résultat dans w
    movwf status_temp ; sauver status swappé
    movf FSR , w ; charger FSR
    movwf FSR_temp ; sauvegarder FSR
    movf PCLATH, w ; charger PCLATH
    movwf PCLATH_temp ; sauvegarder PCLATH
    clrf PCLATH ; passer en Page 0
    GOTO _INT_PIC
    pour compléter le programme afin et exécuter cette instruction
    [/QUOTE]GOTO _INT_PIC[/QUOTE]

  24. Publicité
  25. #19
    freepicbasic

    Re : exemple de programme pour allumer une led et le faire clignoter avec le pic 16F876

    il y a au début l'instruction goto _start_pic c veut dire le programme principal va étre exécuté mais a la fin du programme principal on trouve l'instruction goto _start_pic ca veut dire le programme va étre exécuté de nouveau mais mon probléme c que j'arrive pas a comprendre comment le programme va retourne ici
    C'est l'équivalent du while(1) { .... } du C
    le end de l'assembleur ne termine pas l'éxécution mais détermine la fin physique du prog
    A+, pat

  26. #20
    freepicbasic

    Re : exemple de programme pour allumer une led et le faire clignoter avec le pic 16F876

    l'interruption arrive à l'adresse 0x04 on fait la sauvegarde des registres et on saute au programme qui exécute l'interruption.
    A+, pat

  27. #21
    abdoucasa

    Re : exemple de programme pour allumer une led et le faire clignoter avec le pic 16F876

    Citation Envoyé par freepicbasic Voir le message
    C'est l'équivalent du while(1) { .... } du C
    le end de l'assembleur ne termine pas l'éxécution mais détermine la fin physique du prog
    qu'est ce que ca veut dire la fin physique du programme

  28. #22
    freepicbasic

    Re : exemple de programme pour allumer une led et le faire clignoter avec le pic 16F876

    Citation Envoyé par abdoucasa Voir le message
    qu'est ce que ca veut dire la fin physique du programme
    Tout ce qu'il y a dessous ne sera pas assemblé.
    On doit trouvé au dessus un return retfie ou un goto sinon le prog se plante.
    A+, pat

  29. #23
    nirvo

    Re : exemple de programme pour allumer une led et le faire clignoter avec le pic 16F876

    Bonjour
    j'utilise un pic18f24j50
    je veux tester une carte avec le mplab et avec le compilateur c18 pour allumer des led, la carte réalisé contient des leds et ...
    j'ai tester ce programme mais il y'a une erreur

    je veux enfaite chaque fois que j'appui sur un bouton poussoir j'allume une led

    #include <p18f24j50.h>
    #include "typedefs.h"


    void main(void)
    {
    TRISB=0b00000000; // Configuration du portA en sortie
    TRISA=0b11111111; //Port C en entree


    ADCON1=0;
    //code
    while(1)
    {
    if(RA4==1)
    {
    RB0=1;
    }
    else
    RB0=0;
    }
    return 0
    }


    l'erreur est ;
    unable to locate 'typedefs.h'
    unable to locate 'io_cfg.h'
    Dernière modification par nirvo ; 14/04/2010 à 15h08.

  30. #24
    nirvo

    Re : exemple de programme pour allumer une led et le faire clignoter avec le pic 16F876

    bonjour,
    dzl en fait il faut pas prendre en consideration les commentaire, j'utilise port A en entrée et port B en sortie

    et j'ai inclu
    #include "io_cfg.h"
    merci

  31. Publicité
  32. #25
    freepicbasic

    Re : exemple de programme pour allumer une led et le faire clignoter avec le pic 16F876

    adresse 0 au reset et adresse 04 de l'interrupt
    avec 4 octets on ne peut que faire un goto vers le prog principale

    en 04 on sauvegarde les registres et on va vers l'int.
    on pourrait ausi la mettre à la suite sans faire de goto _int_pic
    A+, pat

Discussions similaires

  1. Cherche shéma pour faire clignoter une led
    Par darwenn dans le forum Électronique
    Réponses: 24
    Dernier message: 21/12/2009, 16h39
  2. Code en C pour faire clignoter une led avec un Pic
    Par lcoulon dans le forum Électronique
    Réponses: 6
    Dernier message: 11/04/2009, 16h30
  3. Faire clignoter une led sur pic 16F876A
    Par Rouliane dans le forum Électronique
    Réponses: 9
    Dernier message: 20/11/2008, 13h11
  4. Allumer une LED avec un pic 16F884 (langage c)
    Par wisto59 dans le forum Électronique
    Réponses: 4
    Dernier message: 17/02/2008, 20h41
  5. clignoter une led avec pic 16F873
    Par ibrakanet dans le forum Électronique
    Réponses: 5
    Dernier message: 26/05/2007, 12h25
Découvrez nos comparatifs produits sur l'informatique et les technologies.