Rs232 pic 16f877a
Répondre à la discussion
Affichage des résultats 1 à 4 sur 4

Rs232 pic 16f877a



  1. #1
    invitea0a062f4

    Rs232 pic 16f877a


    ------

    bonjour

    J'ai comme projet une matrice LED 5x5 commander par pc via DB9
    donc pour cela j'ai lus le datasheet du 877A et j'ai essayé de suivre les instruction pour recevoir une donnée "RC7->RX".
    Mais le bout de code que j'ai écris comporte une erreur mais je ne sais pas ou
    avant de venir demander de l aide j'ai essayé plusieurs fois a lire et relire mon code . Si quelqu'un peut il m aider .

    Merci d'avance .
    -----------------------------


    List p=16F877
    #include <p16F877.inc>
    #include <Matrice_seq.inc>
    __CONFIG _CP_OFF & _CPD_OFF &_DEBUG_OFF & _LVP_OFF & _WRT_ENABLE_OFF & _BODEN_OFF & _PWRTE_ON & _WDT_OFF & _HS_OSC

    ;************************ reset ****************************** *****

    org 0x000
    goto init

    ;*********************** EEPROM ****************************** *****

    org 0x2100
    DE 'P','r','o','g'
    org 0x2108
    DE 'M','A','T','R','I','X'
    org 0x2110
    DE 'L','E','D',' ','5','x','5'

    ;********************** DECLARATION DES VARIABLE ******************

    CBLOCK 0x0C
    w_temp:1
    s_temp:1
    donne:1
    ENDC

    ;********************** Macro ****************************** *******

    bank0 macro
    bcf STATUS,RP0
    bcf STATUS,RP1
    endm

    bank1 macro
    bsf STATUS,RP0
    bcf STATUS,RP1
    endm

    bank2 macro
    bcf STATUS,RP0
    bsf STATUS,RP1
    endm

    bank3 macro
    bsf STATUS,RP0
    bsf STATUS,RP1
    endm

    ;*************************** Interruption ******************************

    org 0x0004

    movwf w_temp
    swapf STATUS,w
    movwf s_temp

    bank1
    btfss PIE1,RCIE
    goto restauration
    bank0
    btfsc PIR1,RCIF
    goto reception


    reception
    bank0
    movf RCREG,w
    movwf donne

    movlw d'0'
    subwf donne,w
    btfsc STATUS,Z
    goto PA

    movlw d'1'
    subwf donne,w
    btfsc STATUS,Z
    goto PB


    PA
    bsf PORTA,0 ; petit test LED RA0 pour voir si sa marche
    goto fin

    PB
    bsf PORTB,5 ; petit test LED RB5 pour voir si sa marche aussi
    goto fin

    fin
    bank0
    btfss RCSTA , OERR
    goto restauration
    ; si il y a erreur :
    bcf RCSTA , CREN ; effacer l erreur si il y a lieu
    bsf RCSTA , CREN ; relancer la réception
    goto restauration


    restauration

    swapf s_temp,w
    movwf STATUS
    swapf w_temp,f
    swapf w_temp,w



    retfie


    ;*************************** initialisation ****************************

    init
    clrf PORTA
    clrf PORTB
    clrf PORTC
    clrf PORTD

    bank1


    movlw b'00000110'
    movwf ADCON1
    movlw b'00000000'
    movwf TRISA
    movlw b'00000000'
    movwf TRISB
    movlw b'11000000'
    movwf TRISC
    movlw b'00000000'
    movwf TRISD

    movlw D'25'
    movwf SPBRG

    movlw b'00000100'
    movwf TXSTA

    movlw b'11000000'
    movwf INTCON

    movlw b'00100000'
    movwf PIE1


    bank0

    movlw b'10010000'
    movwf RCSTA

    clrf donne

    goto start


    ;************************** PROGRAMME ****************************** ****

    start:

    ; On attend l interruption

    end

    -----

  2. #2
    DAUDET78

    Re : Rs232 pic 16f877a

    J'y connais rien PIC, mais le programme me surprend ! End est une directive qui indique la fin du fichier à assembler . Moi, je mettrais
    Code:
    ;************************** PROGRAMME ****************************** ****
    
    start:
    
    ; On attend l interruption
    goto Start
    end
    J'aime pas le Grec

  3. #3
    invitea0a062f4

    Re : Rs232 pic 16f877a

    wwa quelle erreur , j'ai fais la majorité et l essentiel oublier mais sa ne résout encore par mon problème. je vous remercie pour votre aide , je vais continuer a chercher ou se tiens mon erreur. Coter MAX232 je l ai tester il marche sans problème.

  4. #4
    invitea0a062f4

    Re : Rs232 pic 16f877a

    bonjour,

    je vous remercie de m avoir aider g enfin trouver l erreur

    a la place de movlw d'1' , je devais mettre movlw '1'

    donc mnt le programme marche

  5. A voir en vidéo sur Futura

Discussions similaires

  1. Pic 16f877a - rs232 - spi
    Par loumi dans le forum Électronique
    Réponses: 5
    Dernier message: 24/06/2010, 07h32
  2. pic 16F877A
    Par invite636b8579 dans le forum Électronique
    Réponses: 22
    Dernier message: 01/04/2009, 15h00
  3. protocole pic 16f877a et pc (liaison rs232)
    Par invited776d929 dans le forum Électronique
    Réponses: 1
    Dernier message: 19/03/2009, 08h20
  4. CAN pic 16f877A
    Par invite85bfc8b3 dans le forum Électronique
    Réponses: 1
    Dernier message: 11/08/2008, 13h39
  5. pic 16f877a
    Par invited2ae1532 dans le forum Électronique
    Réponses: 3
    Dernier message: 01/02/2008, 10h49
Découvrez nos comparatifs produits sur l'informatique et les technologies.