Répondre à la discussion
Page 1 sur 3 12 DernièreDernière
Affichage des résultats 1 à 30 sur 90

pic16F84



  1. #1
    triste80

    pic16F84


    ------

    j ai un feu tricolere à base de pic16F84. c est un feu tricolere de 6 leds;3led sera commande par la porteA et 3led sur la porteA.je veux faire leur temporisation de led roug 5s et led vert 3s et led orange 2S ;je suis debutante en pic16F84

    -----

  2. Publicité
  3. #2
    kintaroOHE

    Re : pic16F84

    Va voir bigonoff, en le tapant sur google.
    C'est super bien expliqué.

  4. #3
    triste80

    Re : pic16F84

    je sais mais j ai pas bien compris le timer

  5. #4
    kintaroOHE

    Re : pic16F84

    Bah pour faire une tempo en pic, je pense qu'il suffit juste de faire des boucle d'instruction.
    Une instruction dure 1µs je croit, après ya plus qu'à calculer présicément combien y te faut d'instruction en bouclant tout ca

  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
    triste80

    Re : pic16F84

    j ai fait cette initialisation au programme
    org 00h
    goto debut


    org 05h

    debut
    clrf portA initialisation des portes
    clrf portB
    bsf statut,RP0 accès bank 1
    movlw B'11111000'
    movwf trisA
    movlw B'00000111'
    movwf trisB
    bcf statut;RP0 accès bank0
    clrf portA
    CLRF potB extintion des led
    d après que j ai compris des cours
    Dernière modification par triste80 ; 05/04/2007 à 18h07.

  9. #6
    triste80

    Re : pic16F84

    je sais faire le tempo seulement le charger dans le compteur combien de boucles pour avoir mon tempo en seconde ou ms

  10. Publicité
  11. #7
    Gérard

    Re : pic16F84

    Citation Envoyé par triste80 Voir le message
    j ai fait cette initialisation au programme
    org 00h
    goto debut


    org 05h

    debut
    clrf portA initialisation des portes
    clrf portB
    bsf statut,RP0 accès bank 1
    movlw B'11111000'
    movwf trisA
    movlw B'00000111'
    movwf trisB
    bcf statut;RP0 accès bank0
    clrf portA
    CLRF potB extintion des led
    d après que j ai compris des cours
    As-tu assemblé ce bout de code ?
    Je pense que tu auras des erreurs.

  12. #8
    Gérard

    Re : pic16F84

    Citation Envoyé par triste80 Voir le message
    je sais mais j ai pas bien compris le timer
    C'est pourtant bien expliqué, je ne saurais pas faire mieux.

  13. #9
    Gérard

    Re : pic16F84

    Citation Envoyé par triste80 Voir le message
    je sais faire le tempo seulement le charger dans le compteur combien de boucles pour avoir mon tempo en seconde ou ms
    Ca dépend aussi de la vitesse du quartz.

  14. #10
    triste80

    Re : pic16F84

    comment je charge le timer prescalar .je veux etteint les leds et s allumer dans mon programme

  15. #11
    triste80

    Re : pic16F84

    je veux allumer la led roug1de portA ; led vert de portB
    j ai fait dans mon programme:
    movlw 02h
    movwf portA
    movlw 08h
    movwf portB

  16. #12
    Gérard

    Re : pic16F84

    Si tu veux des réponses claires, pose des questions claires, j'ai (et je ne dois pas être le seul) du mal à comprendre ce que tu veux.
    "
    je veux allumer la led roug1de portA ; led vert de portB
    j ai fait dans mon programme:
    movlw 02h
    movwf portA
    movlw 08h
    movwf portB
    "

    C'est quoi le rapport entre roug1 (PORTA,1) et portA ?
    pourquoi movlw 02h ?

    Explique un peu plus et dans un français correct.
    Merci.

  17. Publicité
  18. #13
    Shaiton

    Re : pic16F84

    Bonjour,
    oui moi aussi j'ai du mal a comprendre les questions...

    c'est de l'asm ca non?
    je ne connais que le C, je ne pourrais donc pas aider.

    Ce que je peux dire, c'est seulement pour eclaircir la "question".

    On voit le code de la meme maniere? :
    - initialisation des entrée/sorties, des registres (c'est la qu'on configure le timer, et dans le temps de cycle).
    - boucle infinie => On allume une led et on etteind les autre. Pause de X seconde (si on a créé une fonction pause1ms() on l'appel 1000fois de suite pour faire 1s. etc

    Pour ce qui est de la fonction pause1ms() c'est là que doit etre le probleme: mais bon là je resonne en C alors ca va pas..
    du moins le principe c'est ca.

    Bonne continuation
    Le Geek Sportif !

  19. #14
    freepicbasic

    Re : pic16F84

    Code:
    org 00h
    goto debut
    
    
    org 05h
    
    debut
    clrf portA ; initialisation des portes
    clrf portB
    bsf statut,RP0 ; accès bank 1
    movlw B'11111000'
    movwf trisA
    movlw B'00000111'
    movwf trisB
    bcf statut,RP0 ;accès bank0
    clrf portA
    CLRF potrB ; extintion des led
    Ne pas confondre le "," et les ";" qui servent aux commentaires.

    Ou sont connectées Les LEDs ?
    bit 0 = 1
    bit 1 = 2
    bit 2 = 4
    bit 3 = 8

    Code:
    movlw 02h
    movwf portA
    movlw 08h
    movwf portB
    ici tu allume une led sur le bit 1
    pendand 2 µs
    puis tu allume une Led sur le bit 3

    Code:
    ForEver
    movlw 02h
    movwf portA
    call MyTempo ; 1sec
    call MyTempo ; 1sec
    call MyTempo ; 1sec
    movlw 08h
    movwf portB
    call MyTempo ; 1sec
    goto ForEver
    
    ;
    ; utilisé 20h compteur L et 21H  compteur H 
    ; 22H comme compteur 1/10 de seconde.
    ; comme compteur de tempo
    ; Le 020H fait 512 µs
    ; on met 195 dans 021H pour faire ~100 000 soit 1/10 de sec
    ; on met 10 dans 022H pour faire 1 seconde
    MyTempo
    movlw 0
    movwf 020h
    movlw 195
    movwf 021h
    movlw 10
    movwf 022h
    loop512us
    decfsz 020H,f
    decfsz 021H,f
    decfsz 022H,f
    return
    
    end

    Déjà testé ça !
    et le modifier pour bien se familiariser avec.
    Afin de bien maitriser !
    Après on peut commencer des essais avec le timer.





    3 couleurs !
    Code:
    ForEver
    movlw 02h
    movwf portA
    call MyTempo ; 1sec
    call MyTempo ; 1sec
    call MyTempo ; 1sec
    movlw 08h
    movwf portB
    call MyTempo ; 1sec
    goto ForEver
    movlw 04h
    movwf portA
    call MyTempo ; 1sec
    call MyTempo ; 1sec
    call MyTempo ; 1sec
    goto ForEver
    A+, pat

  20. #15
    triste80

    Re : pic16F84

    merci tu es le seul qui ma compris,j ai mal explique;j avais un probleme comment utiliser le timer

  21. #16
    Gérard

    Re : pic16F84

    Citation Envoyé par triste80 Voir le message
    merci tu es le seul qui ma compris,j ai mal explique;j avais un probleme comment utiliser le timer
    Pat n'est pas le seul à t'avoir compris, il a fait ce que je ne voulais pas faire càd résoudre ton problème.

  22. #17
    freepicbasic

    Re : pic16F84

    Le problème n'est pas résolu , il faut utiliser le timer maintenant.
    C'est juste un point de départ.
    A+, pat

  23. #18
    triste80

    Re : pic16F84

    mais j ai pas demander la solution;j ai demander quelqu un me guide

  24. Publicité
  25. #19
    triste80

    Re : pic16F84

    j ai probleme dans le comprèhention de timer

  26. #20
    freepicbasic

    Re : pic16F84

    Il faut lire le coursBigOnOff.
    Le timer utilise les interruptions.
    A+, pat

  27. #21
    Gérard

    Re : pic16F84

    Citation Envoyé par freepicbasic Voir le message
    Il faut lire le coursBigOnOff.
    Le timer utilise les interruptions.
    Et Bigonoff est en français. Tu n'as plus d'excuses.

  28. #22
    freepicbasic

    Re : pic16F84

    Juste pour aider la liste des chosea à faire.

    Initialiser OPTION_REG (lire la doc, bank 1)
    Effacer le T0IF (intcon) par sécurité , facultatif...
    Mettre en route les interruptions dans INTCON
    GIE et T0IE

    Creer une routine d'interruption
    1) sauver les registres
    2) effacer le flag TOIF
    3) Mon prog...
    4) Restorer les registres
    5)IRET


    Faire Attention a la longueur de "Mon prog" si une seconde int arrive avant la fin du IRET, l'int est plantée, puisque le clear T0IF ne peut plus se faire...
    A+, pat

  29. #23
    triste80

    Re : pic16F84

    merci beaucoup je vais lire cours de bignoff;et toi tu me guide ;je sais pas de solution

  30. #24
    triste80

    Re : pic16F84

    merci gèrard ;je vais le lire autre fois si je ne comprend pas une chose tu me le comprend

  31. Publicité
  32. #25
    freepicbasic

    Re : pic16F84

    commence à écrire un bout de prog ,
    tu le post sur ce forum ,
    on corrigera .



    http://f5ad.free.fr/16F84/Interruptions.html
    http://fribotte.free.fr/bdtech/cours..._cours12a.html
    Dernière modification par freepicbasic ; 09/04/2007 à 17h03.
    A+, pat

  33. #26
    triste80

    Re : pic16F84

    salut freepibasic voici un bout de programme
    list pic=16f84
    # iclude (pic16F84.inc)
    _configuration _cp_off,_wdt_off,_pwrte_on,_hs _osc
    equivalences de registr
    esportA equ 0x0005
    portB equ 0x0006
    trisA equ 0x0085
    trisB equ 0x0086
    statut equ 0x0003

    constantes
    durrèeRoug equ 05h ;5s
    durèeVert equ 03h ;3s
    durèeorang equ 02h ;2s

    les registres memoires
    compt equ 0Ch
    compt1 equ 0dh
    compt2 equ 0Eh

    initialisation

    org 00h
    goto debut



    org 05h


    debut

    clrf portB
    clrf portA
    bsf statut,RP0 ;selection de bank1
    movlw B'11111000'
    movwf trisA
    movlw B'00000111'
    movwf trisB
    bcf statut,RP0 ;accès à bank 0
    clrf portA
    clrf portB ;extintion des leds

    bit0=1 de portA portB bit0=1
    bit1=2 bit1=2
    bit2=4 bit2=4
    bit3=8 bit3=8
    on allum le feu roug de (portA,1) et feu vert du (portB,3)
    movlw 02h ;allum feu roug
    movwf portA
    call mytempo1 ;3s
    movlw 08h
    movwf portB
    call mytempo2 ; 2s
    goto forever

    on allume le feu roug de (portA,1) et feu orang (portB,2)
    lili: movlw 02h ;allum feu roug
    movwf portA
    call mytempo1
    movlw 04h
    movwf portB ;allume feu orange
    call mytemp3 ;2s
    goto lili

    dsl pour derrangement et merci pour tout

  34. #27
    triste80

    Re : pic16F84

    la suite
    my tempo1
    movlw 0x0032 ;chargement de compt de 50
    movwf compt2
    T1
    movlw 0x00c8
    movwf compt1
    T2
    movlw 0x00A5
    movwf compt ; chargement par 165
    T3
    decfsz compt,1
    goto T3

    decfsz compt1,1
    goto T2

    descfz compt2,1
    goto T1

    return
    end

  35. #28
    triste80

    Re : pic16F84

    dsl freebasic pour ces question est ce que j utilise le timer après le programme sur post peace2010 je sais je te derrange si oui je ferai moi tout seul

  36. #29
    triste80

    Re : pic16F84

    vraiment j ai besoin de votre aide ;tu peux me guider je me demande rien d autre merci pour tout

  37. #30
    freepicbasic

    Re : pic16F84

    Bouclé sur T3 sinon on sort jamais de la boucle !
    Code:
    my tempo1
    movlw 0x0032 ;chargement de compt de 50
    movwf compt2
    T1
    movlw 0x00c8
    movwf compt1
    T2
    movlw 0x00A5
    movwf compt ; chargement par 165
    T3
    decfsz compt,1
    goto T3
    
    decfsz compt1,1
    goto T3
    
    descfz compt2,1
    goto T3
    
    return
    A+, pat

Page 1 sur 3 12 DernièreDernière

Discussions similaires

  1. montage pic16f84
    Par snyfir dans le forum Électronique
    Réponses: 1
    Dernier message: 17/11/2008, 22h05
  2. pic16F84
    Par peace2010 dans le forum Électronique
    Réponses: 64
    Dernier message: 07/05/2007, 22h26
  3. Eeprom du PIC16F84
    Par clinon dans le forum Électronique
    Réponses: 8
    Dernier message: 30/11/2006, 19h45
  4. Pic16f84-04/p
    Par jo-electrons dans le forum Électronique
    Réponses: 2
    Dernier message: 30/09/2006, 19h50
  5. a propos du PIC16F84
    Par aabdoos dans le forum Électronique
    Réponses: 2
    Dernier message: 18/03/2006, 15h33
Découvrez nos comparatifs produits sur l'informatique et les technologies.