pic et port ps2
Répondre à la discussion
Affichage des résultats 1 à 3 sur 3

pic et port ps2



  1. #1
    invite49d71abe

    pic et port ps2


    ------

    Bonjour

    je cherche a programmer un pic pour qu'il transmette des caractère sur le port ps2 d'un pc je transmet donc une horloge et un signald e donnée. lorsque je fait une silmulation sous mplab j'obtien le bon chronogramme mais lorsque je le programme en realité j'ai que le signal d'horloge savez vous pourquoi?.

    pour vous presenter mon programme ( car je n'ai pas tout commenter)

    en gros j'utilise un boucle pour généré l'horloge sur le port RD0

    puis j'utilise des variable gue je décremente a chaque passage pour appeler 1seul fois le sous programme startcondition, BIT7, BIT6 etc

    je ne vous met pas tt le programme je par sur le fichier de base de bigonoff.

    merci



    ;***************************** ****************************** ******************
    ; PROGRAMME PRINCIPAL *
    ;***************************** ****************************** ******************
    DEBUT
    MOVLW D'1'
    movwf AA


    MOVLW D'1'
    movwf CC


    MOVLW D'1'
    movwf DD


    MOVLW D'1'
    movwf EE

    MOVLW D'1'
    movwf GG

    MOVLW D'1'
    movwf FF

    MOVLW D'1'
    movwf HH


    MOVLW D'1'
    movwf II

    MOVLW D'1'
    movwf LL

    MOVLW D'1'
    movwf MM

    MOVLW D'1'
    movwf NN

    MOVLW D'1'
    movwf OO

    MOVLW D'1'
    movwf PP


    MOVLW D'1'
    movwf QQ


    MOVLW D'1'
    movwf RR


    MOVLW D'1'
    movwf SS

    MOVLW D'1'
    movwf TT

    MOVLW D'1'
    movwf UU

    MOVLW D'1'
    movwf VV

    MOVLW D'1'
    movwf WW

    MOVLW D'12'
    movwf ZZ


    bsf PORTD,1 ; met a 1 la ligne de donnée


    ; Création du signal d'horloge sur broche 19 (port D0)

    start



    ;***************************** ****************************** ******************
    movlw 0x9 ; Initialisation de mariable et mavariable2
    movwf mavariable ; valeur 255 = a peu près T à 500µs
    movlw 0x9
    movwf mavariable2
    ;***************************** ****************************** *******************






    nop
    nop
    nop


    bsf PORTD,0 ;--------------------------------------HORLOGE AU NIVEAU 1

    CALL STARTCONDITION
    decfsz XX,f
    GOTO ici


    CALL BIT7
    decfsz EE,f
    GOTO ici


    CALL BIT6
    decfsz GG,f
    GOTO ici

    CALL BIT5
    decfsz HH,f
    GOTO ici

    CALL BIT4
    decfsz KK,f
    GOTO ici


    CALL BIT3
    decfsz MM,f
    GOTO ici

    CALL BIT2
    decfsz OO,f
    GOTO ici

    CALL BIT1
    decfsz QQ,f
    GOTO ici

    CALL BIT0
    decfsz SS,f
    GOTO ici

    CALL PARITE
    decfsz UU,f
    GOTO ici

    CALL STOPCONDITION

    ici
    decfsz mavariable,f

    GOTO ici







    bcf PORTD,0 ;--------------------------------------HORLOGE AU NIVEAU 0




    ici2
    decfsz mavariable2,f
    GOTO ici2

    GOTO start





    ; ****************************** *************START************ ****************************** ********

    STARTCONDITION

    decfsz AA,f ; décrémente A saute l'instruction suivante si a=0
    return

    bcf PORTD,1 ; met a 0 le bus donnée lorsque l'horloge est a 1


    MOVLW D'255'
    movwf AA ; a=255 pour que lors du prochain cycle le startcondition ne se déroule pas jusqu'a la fin de l'iniatialisation


    MOVLW D'2'
    movwf XX
    return






    ; ****************************** *******envoi de l'octet*********************** **************************


    ;envoi bit 7

    BIT7

    decfsz CC,f
    return

    bsf PORTD,1


    MOVLW D'255'
    movwf CC


    MOVLW D'2'
    movwf EE


    MOVLW D'1'
    movwf XX

    return


    ;envoi bit 6

    BIT6

    decfsz DD,f
    return

    bcf PORTD,1


    MOVLW D'255'
    movwf DD

    MOVLW D'2'
    movwf GG


    MOVLW D'1'
    movwf EE


    MOVLW D'1'
    movwf XX


    return



    ; envoi BIT 5
    BIT5
    decfsz FF,f
    return

    bsf PORTD,1



    MOVLW D'1'
    movwf GG


    MOVLW D'1'
    movwf EE


    MOVLW D'1'
    movwf XX

    MOVLW D'2'
    movwf HH

    MOVLW D'255'
    movwf FF
    return


    ; envoi BIT4
    BIT4
    decfsz II,f
    return

    bcf PORTD,1


    MOVLW D'2'
    movwf KK

    MOVLW D'1'
    movwf XX

    MOVLW D'1'
    movwf GG

    MOVLW D'1'
    movwf EE

    MOVLW D'1'
    movwf HH

    MOVLW D'255'
    movwf II
    RETURN



    ; envoi BIT3
    BIT3
    decfsz LL,f
    return

    bsf PORTD,1

    MOVLW D'255'
    movwf LL

    MOVLW D'2'
    movwf MM

    MOVLW D'1'
    movwf KK

    MOVLW D'1'
    movwf HH

    MOVLW D'1'
    movwf XX

    MOVLW D'1'
    movwf GG

    MOVLW D'1'
    movwf EE

    return


    ; envoi BIT 2

    BIT2
    decfsz NN,f
    return

    bcf PORTD,1


    MOVLW D'255'
    movwf NN

    MOVLW D'2'
    movwf OO

    MOVLW D'1'
    movwf MM

    MOVLW D'1'
    movwf KK


    MOVLW D'1'
    movwf HH

    MOVLW D'1'
    movwf XX

    MOVLW D'1'
    movwf GG

    MOVLW D'1'
    movwf EE

    RETURN


    ; envoi BIT 1


    BIT1
    decfsz PP,f
    return

    bcf PORTD,1



    MOVLW D'255'
    movwf PP

    MOVLW D'1'
    movwf OO

    MOVLW D'1'
    movwf MM

    MOVLW D'1'
    movwf KK


    MOVLW D'1'
    movwf HH

    MOVLW D'1'
    movwf XX

    MOVLW D'1'
    movwf GG

    MOVLW D'1'
    movwf EE

    MOVLW D'2'
    movwf QQ
    RETURN



    ; envoi BIT 0

    BIT0
    decfsz RR,f
    return

    bcf PORTD,1


    MOVLW D'2'
    movwf SS

    MOVLW D'255'
    movwf RR

    MOVLW D'1'
    movwf OO

    MOVLW D'1'
    movwf MM

    MOVLW D'1'
    movwf KK


    MOVLW D'1'
    movwf HH

    MOVLW D'1'
    movwf XX

    MOVLW D'1'
    movwf GG

    MOVLW D'1'
    movwf EE

    MOVLW D'1'
    movwf QQ


    MOVLW D'255'
    movwf PP

    MOVLW D'1'
    movwf OO

    return


    PARITE

    decfsz TT,f
    return


    bcf PORTD,1


    MOVLW D'1'
    movwf SS


    MOVLW D'255'
    movwf TT

    MOVLW D'1'
    movwf OO

    MOVLW D'1'
    movwf MM

    MOVLW D'1'
    movwf KK


    MOVLW D'1'
    movwf HH

    MOVLW D'1'
    movwf XX

    MOVLW D'1'
    movwf GG

    MOVLW D'1'
    movwf EE

    MOVLW D'1'
    movwf QQ


    MOVLW D'2'
    movwf UU

    return





    STOPCONDITION


    decfsz VV,f
    return


    bsf PORTD,1

    MOVLW D'255'
    movwf VV
    return

    end

    -----

  2. #2
    invitef26bdcba

    Re : pic et port ps2

    Salut,

    Notre Claude d'ABC???

    Avec un "programme" aussi peu commenté, tu n'auras pas plus de réponse que sur l'autre forum.

    David.

  3. #3
    RISC

    Re : pic et port ps2

    Salut,

    C'est vrai que c'est illisible...
    En plus on ne sait même pas sur quel PIC c'est sensé fonctionner...PIC16...PIC18...


    zzr69, va falloir faire des efforts au niveau des commentaires si tu veux utiliser l'assembleur car ...être prêt à passer de longues soirées...ou passer au C (au moins cela sera un peu plus lisible)

    a+

Discussions similaires

  1. Connecter un touchpad sur port PS2
    Par invite296add47 dans le forum Électronique
    Réponses: 1
    Dernier message: 19/02/2008, 21h31
  2. Connecteur pour port PS2
    Par invite27471be0 dans le forum Électronique
    Réponses: 2
    Dernier message: 20/06/2007, 20h04
  3. Souris/clavier PS2 sur port USB
    Par invite58a3c88f dans le forum Matériel - Hardware
    Réponses: 4
    Dernier message: 16/06/2006, 11h17
  4. PIC - Mode bootstrap - Clavier PS2 - Manette de jeux
    Par JP dans le forum Électronique
    Réponses: 5
    Dernier message: 10/03/2004, 14h48
  5. clavier PS2 et Pic
    Par invite958adb57 dans le forum Électronique
    Réponses: 1
    Dernier message: 06/11/2003, 00h13
Dans la rubrique Tech de Futura, découvrez nos comparatifs produits sur l'informatique et les technologies : imprimantes laser couleur, casques audio, chaises gamer...