syntaxe C arduino
Répondre à la discussion
Affichage des résultats 1 à 9 sur 9

syntaxe C arduino



  1. #1
    cubitus_54

    syntaxe C arduino


    ------

    Bonjour,

    J'ai un doute sur l’interprétation du SI de ces quelques lignes :

    Code:
    {
    uchar temp;
    
    temp = Read_MFRC522(TxControlReg);
    if (!(temp & 0x03))
    {
    SetBitMask(TxControlReg, 0x03);
    }
    }
    Si (NON (temp ET 0x03)) = 1
    alors SetBitMask(TxControlReg, 0x03);
    Finsi

    Est que mon interprétation est OK ?

    Merci

    -----

  2. #2
    invite1d577638

    Re : syntaxe C arduino

    Euhhh.... Oui je pense.

  3. #3
    invite4781732a

    Re : syntaxe C arduino

    Oui sauf que le & est un opérateur ET bit à bit !

  4. #4
    cubitus_54

    Re : syntaxe C arduino

    OK merci pour la confirmation

  5. A voir en vidéo sur Futura
  6. #5
    invite8486e7c5

    Re : syntaxe C arduino

    Lorsque l'on veut tester une opération ET logique sur une variable, cela équivaut à vérifier si l'un des bits ou tous les bits requis sont actifs. Il faut toujours résonner bit par bit:
    - BIT0 (1) et BIT1 (2) => 0x03.
    - BIT0 (1) et BIT2 (4) => 0x05.
    - BIT0 (1), BIT2 (4) et BIT3 (8) => 0x0D ... etc ...

    if((Variable & 0x05) == 0) => si le BIT0 et le BIT2 ne sont pas actif.
    if((Variable & 0x05) != 0) => si le BIT0 ou le BIT2 est actif.
    if((Variable & 0x05) == 0x01) => si le BIT0 est actif.
    if((Variable & 0x05) == 0x04) => si le BIT2 est actif.
    if((Variable & 0x05) == 0x05) => si le BIT0 et le BIT2 sont actif.

  7. #6
    cubitus_54

    Re : syntaxe C arduino

    Pour la condition j'ai bien compris l'explication.

    j'ai encore un tout petit doute sur le "alors", "sinon"

    if (!(temp & 0x03))
    {
    SetBitMask(TxControlReg, 0x03);
    }


    Comment serait écrit

    Alors
    sinon
    finsi

    sinon
    finsi (si ca existe)

  8. #7
    invite4781732a

    Re : syntaxe C arduino

    bhé le alors, c'est ce qui est entre { } dans l'exemple que tu site. Le sinon, c'est ELSE suivi d'une instruction ou d'un bloc d'instruction entre {}. ex :

    if (!(temp & 0x03)) // Condition
    {
    SetBitMask(TxControlReg, 0x03); // code a executer si la condition est remplie (Alors)
    }
    else // sinon
    {
    ... // code a executer si la condition n'est pas remplie
    }

    la fin est implicite. Note que les { } ne sont pas obligatoire si tu as une seule instruction a executer :

    if (!(temp & 0x03)) // Condition
    SetBitMask(TxControlReg, 0x03);
    else
    printf("refusé");

  9. #8
    invite8486e7c5

    Re : syntaxe C arduino

    Dans ARDUINO ou plus généralement, il n'y a que SI (if) et SINON (else).
    Il existe plusieurs niveaux de langage de programmation. La plus basse correspond au niveau du microprocesseur utilisé et la plus haute au langage humain. Pour ce dernier niveau, on peut incorporer les ALORS et FINSI (...), le langage est libre tant que quelqu'un qui n'y connait rien comprend. Au niveau du langage de programmation (ARDUINO, C++, BASIC...) on les remplace car ce niveau de langage s'adresse à un publique connaisseur. Dans notre cas, une paire d'accolades remplace ces mots. Attention, si vous ouvrez une accolade, il faut aussi la fermer comme les crochets et les parenthèses.
    On pourrait aussi remplacer le point-virgule par FIN D'OPERATION.

  10. #9
    cubitus_54

    Re : syntaxe C arduino

    OK

    Merci à vous pour toutes ces précisions

Discussions similaires

  1. Arduino anti rebond avec arduino
    Par invited0bffa74 dans le forum Électronique
    Réponses: 13
    Dernier message: 23/10/2014, 18h04
  2. Communication arduino-arduino avec module Xbee
    Par inviteda9a8a4b dans le forum Électronique
    Réponses: 2
    Dernier message: 23/12/2013, 18h24
  3. Syntaxe particulière en C
    Par Dlzlogic dans le forum Programmation et langages, Algorithmique
    Réponses: 3
    Dernier message: 13/03/2013, 15h40
  4. Syntaxe scicoslab
    Par invite9fdfa1df dans le forum Programmation et langages, Algorithmique
    Réponses: 2
    Dernier message: 13/04/2012, 14h37
  5. Syntaxe
    Par invite58d2d622 dans le forum Chimie
    Réponses: 1
    Dernier message: 17/01/2006, 16h33
Dans la rubrique Tech de Futura, découvrez nos comparatifs produits sur l'informatique et les technologies : imprimantes laser couleur, casques audio, chaises gamer...