nikolas77

valeur potar

Jul 1st, 2021
1,208
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. #include <Servo.h>                              // Librairie pour la gestion des ServoMoteurs
  2. #include <LiquidCrystal_I2C.h>                 // Inclusion de la librairie pour afficheur LCD
  3. #include <Wire.h>
  4.  
  5. LiquidCrystal_I2C lcd(0x27,16,2);
  6.  
  7. Servo myservo1;                                 //créer un objet Servo
  8. Servo myservo2;                                 //créer un objet Servo
  9.  
  10. int Potpin1 = 0;                                //broche analogique utilisée pour connecter le Potentiomètre 1 ( haut/bas)
  11. int Potpin2 = 1;                                //broche analogique utilisée pour connecter le Potentiomètre 2 (gauche/droite)
  12.  
  13. int val1;                                       //variable pour lire la valeur de la broche analogique 0
  14. int val2;                                       //variable pour lire la valeur de la broche analogique 1  
  15.  
  16. void setup() {
  17.  
  18.   lcd.init();
  19.   lcd.backlight();
  20.   lcd.setCursor(3, 0);
  21.   lcd.print("BIENVENUE.");
  22.   delay(3500);  
  23.  
  24.   pinMode(Potpin1, INPUT);                    // Configure les broches en entrées
  25.   pinMode(Potpin2, INPUT);
  26.  
  27.   myservo1.attach(9);                        
  28.   myservo2.attach(10);
  29. }
  30. void loop() {
  31. //********************************************************************************************************************
  32.  
  33.   gestionPotpin1();//*********************// Appelle la fonction du Potentiometre 1
  34.   gestionPotpin2();//*********************// Appelle la fonction du Potentiometre 1
  35. }
  36. //**************************************
  37. //***Fonction Potentiometre 1 **********
  38. //**************************************
  39. void gestionPotpin1() {
  40.    
  41.   val1 = analogRead(Potpin1);//************//lit la valeur du Potentiomètre (valeur entre 0 et 1023)
  42.   val1 = map(val1, 0, 1023, 0, 181);//*****//mettre à l'échelle pour l'utiliser avec le ServoMoteur 1 (valeur entre 0 et 180)
  43.   myservo1.write(val1);//******************//règle la position du SServoMoteur en fonction de la valeur mise à l'échelle
  44.   lcd.setCursor(0, 0);
  45.   lcd.print("potar H/B : ");
  46.   lcd.setCursor(12, 0);
  47.   lcd.print(val1);
  48.   lcd.setCursor(15, 0);  
  49.   lcd.print("%");
  50. }                    
  51.  
  52. //***************************************
  53. //***Fonction Potentiometre 2 ***********
  54. //***************************************
  55. void gestionPotpin2() {
  56.  
  57.   val2 = analogRead(Potpin2);//************//lit la valeur du Potentiomètre (valeur entre 0 et 1023)
  58.   val2 = map(val2, 0, 1023, 0, 91);//*****//mettre à l'échelle pour l'utiliser avec le ServoMoteur 2 (valeur entre 0 et 90)
  59.   myservo2.write(val2);//******************//règle la position du ServoMoteur 2 en fonction de la valeur mise à l'échelle
  60.   lcd.setCursor(0, 1);
  61.   lcd.print("potar G/D : ");
  62.   lcd.setCursor(12, 1);  
  63.   lcd.print(val2);
  64.   lcd.setCursor(15, 1);
  65.   lcd.print("%");  
  66. }
RAW Paste Data