programmer en langage C un potentiomètre
Répondre à la discussion
Affichage des résultats 1 à 10 sur 10

programmer en langage C un potentiomètre



  1. #1
    invite39431908

    programmer en langage C un potentiomètre


    ------

    bonjours j'aimerais donc utiliser un potentiomètre pour me permettre de mesurée un angle. L'angle mesurer j'aimerais l'afficher sur deux afficher 7 segments: un pour les unités et un pour les dizaines. Sachant que mes base en langage C sont les principales fonction. j'aimerais savoir comment faire pour convertir le courant obtenue en un angle?

    -----

  2. #2
    doul11

    Re : programmer en langage C un potentiomètre

    bonjour,

    il vaut mieux utiliser le potentiomètre en diviseur de tension, si le potentiomètre a une courbe linéaire la relation entre la tension et l'angle sera aussi linéaire. par exemple : 0° -> 0V 300° -> 5V, si j'ai 2V ça fait 120°
    La logique est une méthode systématique d’arriver en confiance à la mauvaise conclusion.

  3. #3
    invite39431908

    Re : programmer en langage C un potentiomètre

    unsigned int temp_res;
    char pot;
    void main() {
    TRISA=0xFF;
    TRISB=0xFF // on branche le 7segment uniter sur port A et le dizaine sur le port B
    TRISC=0x00
    PORTA=0x00
    PORTB=0x00
    ADCON1=0x80;
    do{
    temp_res=Adc_Read(0);
    pot=temp_res>>2;
    if(pot==0){PORTA=0&&PORTB=0;} //0°
    if(pot>0,0000)&&(pot<0,0555){P ORTA=0b00000001;} //1°
    if(pot>0,0555)&&(pot<0,1111){P ORTA=0b00000010;} //2°
    if(pot>0,1111)&&(pot<0,1666){P ORTA=0b00000011;} //3°
    if(pot>0,1666)&&(pot<0,2222){P ORTA=0b00000100;} //4°
    if(pot>0,2222)&&(pot<0,2777){P ORTA=0b00000101;} //5°
    if(pot>0,2777)&&(pot<0,3333){P ORTA=0b00000110;} //6°
    if(pot>0,3333)&&(pot<0,3888){P ORTA=0b00000111;} //7°
    if(pot>0,3888)&&(pot<0,4444){P ORTA=0b00001000;} //8°
    if(pot>0,4444)&&(pot<0,5000){P ORTA=0b00001001;} //9°
    if(pot>0,5000)&&(pot<0,6111){P ORTA=0b0000000;
    PORTB=0b0000001;} //10°
    if(pot>0,6111)&&(pot<0,6666){P ORTA=0b0000001;
    PORTB=0b0000001;
    } //11°
    if(pot>0,6666)&&(pot<0,7222){P ORTA=0b0000010;
    PORTB=0b0000001;
    } //12°
    if(pot>0,7222)&&(pot<0,7777){P ORTA=0b0000011;
    PORTB=0b0000001;} //13°
    if(pot>0,7777)&&(pot<0,8333){P ORTA=0b0000100;
    PORTB=0b0000001;} //14°
    if(pot>0,8333)&&(pot<0,8888){P ORTA=0b0000101;
    PORTB=0b0000001;} //15°
    if(pot>0,8888)&&(pot<0,9444){P ORTA=0b0000110;
    PORTB=0b0000001;} //16°
    if(pot>0,9444)&&(pot<0,1000){P ORTA=0b0000111;
    PORTB=0b0000001;} //17°
    if(pot>0,1000)&&(pot<1,0555){P ORTA=0b0001000;
    PORTB=0b0000001;} //18°
    if(pot>1,0555)&&(pot<1,1111){P ORTA=0b0001001;
    PORTB=0b0000001;} //19°
    if(pot>1,1111)&&(pot<1,1666){P ORTA=0b0000000;
    PORTB=0b0000010;} //20°
    if(pot>1,1666)&&(pot<1,2222){P ORTA=0b0000001;
    PORTB=0b0000010;} //21°
    if(pot>1,2222)&&(pot<1,2777){P ORTA=0b0000010;
    PORTB=0b0000010;} //22°
    if(pot>1,2777)&&(pot<1,3333){P ORTA=0b0000011;
    PORTB=0b0000010;} //23°
    if(pot>1,3333)&&(pot<1,3888){P ORTA=0b0000100;
    PORTB=0b0000010;} //24°
    if(pot>1,3888)&&(pot<1,4444){P ORTA=0b0000101;
    PORTB=0b0000010;} //25°
    if(pot>1,4444)&&(pot<1,5000){P ORTA=0b0000110;
    PORTB=0b0000010;} //26°
    if(pot>1,5000)&&(pot<1,6111){P ORTA=0b0000111;
    PORTB=0b0000010;} //27°
    if(pot>1,6111)&&(pot<1,6666){P ORTA=0b0001000;
    PORTB=0b0000010;} //28°
    if(pot>1,6666)&&(pot<1,7222){P ORTA=0b0001001;
    PORTB=0b0000010;} //29°
    if(pot>1,7222)&&(pot<1,7777){P ORTA=0b0000000;
    PORTB=0b0000011;} //30°
    if(pot>1,7777)&&(pot<1,8333){P ORTA=0b0000001;
    PORTB=0b0000010;} //31°
    if(pot>1,8333)&&(pot<1,8888){P ORTA=0b0000010;
    PORTB=0b0000010;} //32°
    if(pot>1,8888)&&(pot<1,9444){P ORTA=0b0000011;
    PORTB=0b0000010;} //33°
    if(pot>1,9444)&&(pot<1,1000){P ORTA=0b0000100;
    PORTB=0b0000010;} //34°
    }






    merci de me dire si ça fonctionnerais (je me suis baser sur 90° donc 5V correspondant à 90°) merci de votre aide

  4. #4
    invite29971eb1

    Re : programmer en langage C un potentiomètre

    pot est un char, donc un entier entre 0 et 255. Tes comparaisons ne marcheront pas. De plus, à quoi bon faire des tas de comparaison là ou une opération suffit

    angle=pot*90/255;

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

    Re : programmer en langage C un potentiomètre

    d'accord c'est vraie que les valeurs que je test vienne de ce calcul mais après ceci il faut que je fasse correspondre à chaque valeur l'angle qui lui correspond et c'est ça que je trouver pas. Donc j'ais détailler tout les tests pour pouvoir afficher les angles.

  7. #6
    invite849f6457

    Re : programmer en langage C un potentiomètre

    c'est trés moche sans les balises CODE sa ne donne méme pas envie de lire

  8. #7
    invite29971eb1

    Re : programmer en langage C un potentiomètre

    Citation Envoyé par thestich Voir le message
    d'accord c'est vraie que les valeurs que je test vienne de ce calcul mais après ceci il faut que je fasse correspondre à chaque valeur l'angle qui lui correspond et c'est ça que je trouver pas. Donc j'ais détailler tout les tests pour pouvoir afficher les angles.
    La règle de 3, on apprend ça en CM2.....

  9. #8
    JPL
    Responsable des forums

    Re : programmer en langage C un potentiomètre

    Citation Envoyé par _charléne_ Voir le message
    c'est trés moche sans les balises CODE sa ne donne méme pas envie de lire
    C'est tout aussi moche avec une balise : il n'y a aucune indentation
    Rien ne sert de penser, il faut réfléchir avant - Pierre Dac

  10. #9
    invite39431908

    Re : programmer en langage C un potentiomètre

    Citation Envoyé par _charléne_ Voir le message
    c'est trés moche sans les balises CODE sa ne donne méme pas envie de lire
    merci pour l'info je n'étais pas au courant si tu n'as rien à ajouter pas la peine de pourrir ce sujet je suis dsl mais excuse moi si je l'utilise mais si je ne le dit pas .... bref laissons.... euh ensuite je ne peut pas faire plus beau je voulais juste vous montrer une partie du programme pour savoir si il pouvait fonctionner?

  11. #10
    invite39431908

    Re : programmer en langage C un potentiomètre

    Citation Envoyé par thestich Voir le message
    merci pour l'info je n'étais pas au courant si tu n'as rien à ajouter pas la peine de pourrir ce sujet je suis dsl mais excuse moi si je l'utilise mais si je ne le dit pas .... bref laissons.... euh ensuite je ne peut pas faire plus beau je voulais juste vous montrer une partie du programme pour savoir si il pouvait fonctionner?
    escuse moi j'ais cité le mauvais message mais je pense que vous m'avais compris

Discussions similaires

  1. programmer en C++
    Par invite1bc1ddb5 dans le forum Programmation et langages, Algorithmique
    Réponses: 36
    Dernier message: 10/04/2011, 23h37
  2. de langage C en langage assembleur
    Par invite284746c1 dans le forum Électronique
    Réponses: 1
    Dernier message: 14/05/2009, 13h42
  3. programmer un µc
    Par mortaurat dans le forum Électronique
    Réponses: 13
    Dernier message: 02/05/2009, 00h08
  4. Quel langage est utilisé pour programmer les puce epr-01
    Par invite8c3c27ac dans le forum Électronique
    Réponses: 5
    Dernier message: 15/08/2006, 17h17