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

qui peut m'expliquer ceci ----------



  1. #1
    omar.STE

    qui peut m'expliquer ceci ----------


    ------

    salut
    je suis un peu debutant en ce qui concerne la programmation des pic
    qui peut mexpliquer ce petit paragraphe d'un programme ????? SVP
    surtout les les caractaires en gras
    car j'ai pas l'habitude de definire des varriables en hexadecimale

    ligne1 equ H'00'
    ligne2 equ H'01'
    ligne3 equ H'02'
    ligne4 equ H'03'
    colonn1 equ H'04'
    colonn2 equ H'05'
    colonn3 equ H'06'

    merci à vous

    -----
    l'aide n'a aucun prix

  2. Publicité
  3. 📣 Nouveau projet éditorial de Futura
    🔥🧠 Le Mag Futura est lancé, découvrez notre 1er magazine papier

    Une belle revue de plus de 200 pages et 4 dossiers scientifiques pour tout comprendre à la science qui fera le futur. Nous avons besoin de vous 🙏 pour nous aider à le lancer...

    👉 Je découvre le projet

    Quatre questions à explorer en 2022 :
    → Quels mystères nous cache encore la Lune 🌙 ?
    → Pourra-t-on bientôt tout guérir grâce aux gènes 👩‍⚕️?
    → Comment nourrir le monde sans le détruire 🌍 ?
    → L’intelligence artificielle peut-elle devenir vraiment intelligente 🤖 ?
  4. #2
    Jack
    Modérateur

    Re : qui peut m'expliquer ceci ----------

    Le "EQU" a déjà été expliqué dans un fil récent auquel tu as participé:
    http://forums.futura-sciences.com/thread158524.html

    Quant au H'00', c'est une syntaxe qui fait comprendre à l'assembleur que la valeur '00' est exprimée en Hexadécimal.

    Il existe d'autre syntaxe selon le compilateur ou l'assembleur utilisé:
    $00 -> Motorola
    00h -> Intel
    0x00 -> style langage C
    etc.

    A+

  5. #3
    omar.STE

    Question Re : qui peut m'expliquer ceci ----------

    salut
    les caractaires en gras je crois qu'ils signifis des entrées et des sorties (H'00' signifit port B0 et H'01' portB1 ..........etc )
    n'est ce pas ça ???
    merci avotre reponses
    l'aide n'a aucun prix

  6. #4
    Gérard

    Re : qui peut m'expliquer ceci ----------

    La direction des lignes E/S sont définies dans les registres TRISx (x = A ou B ...).

  7. A voir en vidéo sur Futura
  8. #5
    omar.STE

    Question Re : qui peut m'expliquer ceci ----------

    Citation Envoyé par Gérard Voir le message
    La direction des lignes E/S sont définies dans les registres TRISx (x = A ou B ...).

    salut
    oui je savais ça
    par exemple si on met
    movlw B'1011110'
    movwf TRISB

    ça veut dire que tous les ports B sont en entrée sauf le portB0 et le portB6 qui sont en sortie
    et si on veut exprimer ça en HEX comment on peut le faire
    H'5E'
    est ce que c'est vrai ?????

    merci pour vos reponses

    @++
    l'aide n'a aucun prix

  9. #6
    invite_P89
    Invité

    Re : qui peut m'expliquer ceci ----------

    C'est exat mais maque 0
    01011110
    tu coupes sur 4bits
    0101.....1110
    cela fait
    5.............E h
    salut

  10. Publicité
  11. #7
    Gérard

    Re : qui peut m'expliquer ceci ----------

    Citation Envoyé par omar.STE Voir le message
    salut
    oui je savais ça
    par exemple si on met
    movlw B'1011110'
    movwf TRISB

    ça veut dire que tous les ports B sont en entrée sauf le portB0 et le portB6 qui sont en sortie
    et si on veut exprimer ça en HEX comment on peut le faire
    H'5E'
    est ce que c'est vrai ?????

    merci pour vos reponses

    @++

    Tu as oublié un 0 (ou 1), il n'y a que 7 valeurs ( 0 / 1) après le "movwf"
    Perso, je laisse en binaire, c'est plus facile de savoir ce qu'on a fait et plus facile à modifier.
    Un 0 --> Sortie
    Un 1 --> Entrée
    Attention, dans ton bout de code, tu ne te mets pas en bank1 pour écrire dans TRISB.

  12. #8
    omar.STE

    Exclamation Re : qui peut m'expliquer ceci ----------

    Citation Envoyé par Gérard Voir le message
    Tu as oublié un 0 (ou 1), il n'y a que 7 valeurs ( 0 / 1) après le "movwf"
    Perso, je laisse en binaire, c'est plus facile de savoir ce qu'on a fait et plus facile à modifier.
    salut
    comment j'ai oublier un 0 ou 1
    est ce qu'il me fallait faire comme ça ??
    H'05E'
    moi aussi je prefere les laisse en binaire
    mais comment je peux faire pour ce petit pragraphe que j'ai posté dans mon premier message ????
    l'aide n'a aucun prix

  13. #9
    gedonet

    Re : qui peut m'expliquer ceci ----------

    Bonjour
    Mplab comprend plusieurs formats qu'il vaut mieux connaitre pour ecrire les valeurs:
    1° Decimal
    D'100' ou .100
    2° Hexadecimal
    H'A0' ou 0xA0
    3° Octal
    O'777'
    4° Binaire
    B'10101010'
    5° ASCII
    A'c' ou 'c'
    Peut etre y en a t'il d'autre?
    Gilles

  14. #10
    Gérard

    Re : qui peut m'expliquer ceci ----------

    Citation Envoyé par omar.STE Voir le message
    salut
    comment j'ai oublier un 0 ou 1
    est ce qu'il me fallait faire comme ça ??
    H'05E'
    moi aussi je prefere les laisse en binaire
    mais comment je peux faire pour ce petit pragraphe que j'ai posté dans mon premier message ????
    Ce que je voulais dire : le PORTB contient 8 pins, il faut donc définir la direction de 8 I/O et non 7 comme tu l'as fait.

    Si tu préfères le binaire, laisse en binaire !

    Que veux-tu faire avec le petit paragraphe du post 1 ?
    Qu'est ce que tu ne comprends pas ?
    Est ce que ce sont des constantes, des variables ?

  15. #11
    omar.STE

    Red face Re : qui peut m'expliquer ceci ----------

    Citation Envoyé par Gérard Voir le message
    Qu'est ce que tu ne comprends pas ?
    salut
    exactement ça

    par exemple
    que veut dire
    ligne1 equ H'00' ...........etc
    je savais que equ = equivalent
    mais ligne1 c'est une entrée (c'est une ligne d'un clavier )
    à mon avie il fallait faire (ligne1 equ portB0 ) ou bien c'est faut ,????
    et c'est un grand plaisir pour moi si tu m'esxplique un peu !!!!!!!!!!

    @+
    Dernière modification par omar.STE ; 05/08/2007 à 20h23.
    l'aide n'a aucun prix

  16. #12
    Gérard

    Re : qui peut m'expliquer ceci ----------

    Citation Envoyé par omar.STE Voir le message
    salut
    exactement ça

    par exemple
    que veut dire
    ligne1 equ H'00' ...........etc
    je savais que equ = equivalent
    mais ligne1 c'est une entrée (c'est une ligne d'un clavier )
    à mon avie il fallait faire (ligne1 equ portB0 ) ou bien c'est faut ,????
    et c'est un grand plaisir pour moi si tu m'esxplique un peu !!!!!!!!!!

    @+
    Avec cette ligne : ligne1 equ H'00'

    chaque fois que le compilateur rencontre ligne1, il le remplacera par 0

    Je ne peux pas préciser davantage, il manque le contexte autour ces quelques lignes de code.

  17. Publicité
  18. #13
    omar.STE

    Re : qui peut m'expliquer ceci ----------

    Citation Envoyé par Gérard Voir le message
    Je ne peux pas préciser davantage, il manque le contexte autour ces quelques lignes de code.
    salut
    comme je l'ai dis ligne1 ; 2 ; 3 .... ça veut dire des li gnes d'un clavier de 12touches
    voici ici presque mon emi programme
    peux tu me comprendre et m'expliquer un peu ??

    list p=16f84,f=inhx8m ; Type de PIC et format de fichier
    __config B'11111111110001' ; pas de protection du code, timer au demarrage,
    ; pas de chien de garde, oscillateur a quartz.
    #include "p16f84.inc" ; Librairie pour le compilateur

    ;definition des variables
    ligne1 equ H'00' ;ces definitions servent pour la lecture du clavier
    ligne2 equ H'01'
    ligne3 equ H'02'
    ligne4 equ H'03'
    colonn1 equ H'04'
    colonn2 equ H'05'
    colonn3 equ H'06'

    val1 equ H'0C'
    val2 equ H'0D'
    val3 equ H'0E'
    relais equ H'0F'
    marche equ H'10'
    n1 equ H'11'
    n2 equ H'12'
    n3 equ H'13'
    n4 equ H'14'
    temp1 equ H'15'
    valeur equ H'16'
    temp2 equ H'17'
    temp3 equ H'18'
    temp4 equ H'19'
    temp5 equ H'1A'

    org 0
    goto debu
    t
    l'aide n'a aucun prix

  19. #14
    Gérard

    Re : qui peut m'expliquer ceci ----------

    Citation Envoyé par omar.STE Voir le message
    salut
    comme je l'ai dis ligne1 ; 2 ; 3 .... ça veut dire des li gnes d'un clavier de 12touches
    voici ici presque mon emi programme
    peux tu me comprendre et m'expliquer un peu ??

    list p=16f84,f=inhx8m ; Type de PIC et format de fichier
    __config B'11111111110001' ; pas de protection du code, timer au demarrage,
    ; pas de chien de garde, oscillateur a quartz.
    #include "p16f84.inc" ; Librairie pour le compilateur

    ;definition des variables
    ligne1 equ H'00' ;ces definitions servent pour la lecture du clavier
    ligne2 equ H'01'
    ligne3 equ H'02'
    ligne4 equ H'03'
    colonn1 equ H'04'
    colonn2 equ H'05'
    colonn3 equ H'06'

    val1 equ H'0C'
    val2 equ H'0D'
    val3 equ H'0E'
    relais equ H'0F'
    marche equ H'10'
    n1 equ H'11'
    n2 equ H'12'
    n3 equ H'13'
    n4 equ H'14'
    temp1 equ H'15'
    valeur equ H'16'
    temp2 equ H'17'
    temp3 equ H'18'
    temp4 equ H'19'
    temp5 equ H'1A'

    org 0
    goto debu
    t
    La définition des variables n'est pas correcte, il faut dire à l'assembleur où commence la RAM
    Exemple :

    CBLOCK 00C0h ;debut RAM du 16F84
    ; c'est ici qu'il faut donner des "noms" aux cases mémoire
    .....

    ENDC


    Tu devrais lire le cours 1 de Bigonoff.

  20. #15
    Jack
    Modérateur

    Re : qui peut m'expliquer ceci ----------

    En fait, c'est le terme "définition des variables" qui est inadapté. Comme ça a été dit, un equ ne définit pas une variable mais ne sert qu'à remplacer la chaine à gauche du equ par celle de droite.
    Une définition de variable implique une réservation de mémoire RAM, ce que ne fait à aucun moment la directive equ.

    Les lignes equ ne servent qu'à améliorer la lisibilité d'un programme.

    A+

  21. #16
    Gérard

    Re : qui peut m'expliquer ceci ----------

    Citation Envoyé par Jack Voir le message
    En fait, c'est le terme "définition des variables" qui est inadapté. Comme ça a été dit, un equ ne définit pas une variable mais ne sert qu'à remplacer la chaine à gauche du equ par celle de droite.
    Une définition de variable implique une réservation de mémoire RAM, ce que ne fait à aucun moment la directive equ.

    Les lignes equ ne servent qu'à améliorer la lisibilité d'un programme.

    A+
    C'est ce que j'ai dit avec d'autres mots dans les post 12 et 14.

  22. #17
    Jack
    Modérateur

    Re : qui peut m'expliquer ceci ----------

    Alors on est d'accord

    A+

  23. #18
    Gérard

    Re : qui peut m'expliquer ceci ----------

    Citation Envoyé par Jack Voir le message
    Alors on est d'accord

    A+
    Ben oui, encore faut-il qu'OMAR ait compris.

  24. Publicité
  25. #19
    omar.STE

    Cool Re : qui peut m'expliquer ceci ----------

    Citation Envoyé par Gérard Voir le message
    Ben oui, encore faut-il qu'OMAR ait compris.
    salut
    behhh oui j'ai un peu compris merci à vous tous
    j'ai 2 parties de cours de biggnoff
    ceux sont des bonnes leçons mais l'explication par d'autres personnes et un peu des exemples reste le meilleur moyen pour moi pour mieux comprendre c'est pour ça je suis là
    merci à vous


    @+++
    l'aide n'a aucun prix

  26. #20
    Gérard

    Re : qui peut m'expliquer ceci ----------

    Citation Envoyé par omar.STE Voir le message
    salut
    behhh oui j'ai un peu compris merci à vous tous
    j'ai 2 parties de cours de biggnoff
    ceux sont des bonnes leçons mais l'explication par d'autres personnes et un peu des exemples reste le meilleur moyen pour moi pour mieux comprendre c'est pour ça je suis là
    merci à vous


    @+++
    Bigonoff explique très bien et donne des exemples concrets.
    Si tu as quand même des questions, nous serons là.

    Il faudra que tu fasses la différence entre déclarer des variables et donner des noms à des constantes ou des variables.

  27. #21
    omar.STE

    Thumbs up Re : qui peut m'expliquer ceci ----------

    Citation Envoyé par Gérard Voir le message
    Bigonoff explique très bien et donne des exemples concrets.
    Si tu as quand même des questions, nous serons là.
    slt
    merci pour toi Gérard
    j'ai bcp de questions et j'ai besoin de vos aides
    sur tout en ce qui concerne la programation des pic 16F
    j'espere bien que je trouverai des gens qui peuvent m'aider

    @+++
    l'aide n'a aucun prix

  28. #22
    Gérard

    Re : qui peut m'expliquer ceci ----------

    Citation Envoyé par omar.STE Voir le message
    slt
    merci pour toi Gérard
    j'ai bcp de questions et j'ai besoin de vos aides
    sur tout en ce qui concerne la programation des pic 16F
    j'espere bien que je trouverai des gens qui peuvent m'aider

    @+++
    Pas de problème, tu trouveras toujours quelqu'un qui répond.

  29. #23
    omar.STE

    Re : qui peut m'expliquer ceci ----------

    Citation Envoyé par Gérard Voir le message
    Pas de problème, tu trouveras toujours quelqu'un qui répond.

    merci
    mais l'importance c'est la reponse et pas repondre

    thank you all

    @++
    l'aide n'a aucun prix

Discussions similaires

  1. Quelqu'un peut m'expliquer?
    Par VincentTesla dans le forum Technologies
    Réponses: 35
    Dernier message: 25/07/2008, 09h03
  2. sauriez-vous m'expliquer ceci?
    Par Flicky dans le forum Chimie
    Réponses: 4
    Dernier message: 20/10/2007, 19h20
  3. quelqu'un peut il m'expliquer ^^
    Par RT3669 dans le forum Matériel astronomique et photos d'amateurs
    Réponses: 9
    Dernier message: 16/12/2006, 15h16
  4. Réponses: 2
    Dernier message: 09/04/2005, 18h30
  5. Réponses: 3
    Dernier message: 04/10/2003, 16h29
Découvrez nos comparatifs produits sur l'informatique et les technologies.