L'ensemble des tutos ci-dessous sont destinés aux élèves du lycée André Malraux de Montereaux Fault-Yonne et sont adaptés à notre matériel.

Tutos Arduino

Led

Montage
Code
int led = 3;

void setup()
{
  pinMode(led, OUTPUT);    
}
void loop()
{
          digitalWrite(led, HIGH);  
          delay(2000);
          digitalWrite(led, LOW);    
          delay(2000);
}
Montage
Code

void setup() {
  
  pinMode(led, OUTPUT);
}

void loop() {
  
  analogWrite(led, luminosite);

   luminosite = luminosite + valeur_fondu;

  
  if (luminosite <= 0 || luminosite >= 255) {
    valeur_fondu = -valeur_fondu;
  }
 
  delay(30);
}

Montage
Code


int led_pin = 13; // Permet d'utiliser la LED interne                
int bouton_pin = 2;               

void setup() {
  pinMode(led_pin, OUTPUT);      
  pinMode(bouton_pin, INPUT);     
}

void loop(){
  int val = digitalRead(bouton_pin);  
  if (val == HIGH) {            
    digitalWrite(led_pin, LOW);  
  } else {
    digitalWrite(led_pin, HIGH); 
  }
}

Montage
Code


int var_pin = A0 ; 
int led_pin = 13; // Permet d'utiliser la LED interne
int val_var = 0;        
int val = 0;
        
void setup() {
  pinMode(led_pin, OUTPUT);      
  pinMode(var_pin, INPUT); 
}

void loop() {
    val_var = analogRead(var_pin);
    val = map(val_var, 0, 1023, 0, 255);
    analogWrite(led_pin, val);
   }



Capteurs et détecteurs

Montage
Code


void setup()
{
  Serial.begin(9600);     
}
void loop()
{
  int val_pot;
  val_pot=analogRead(0);     
  Serial.println(val_pot,DEC);
  delay(100);
}



Montage
Code


void setup()
{
  Serial.begin(9600);     
}
void loop()
{
  int val_lum;
  val_lum=analogRead(0);     
  Serial.println(val_lum,DEC);
  delay(100);
}



Montage
Code


 #include 
 #include 
 #define DHT22_PIN 7

 DHT22 myDHT22(DHT22_PIN);

 void setup(void)
 {
   
   Serial.begin(9600);
   Serial.println("DHT22 Démonstration de la librairie");
 }

 void loop(void)
 {
   DHT22_ERROR_t errorCode;
      delay(2000);

   Serial.print("En attente des données...");
   errorCode = myDHT22.readData();
   switch(errorCode)
   {
     case DHT_ERROR_NONE:
      Serial.print("Obtention des données ");
      Serial.print(myDHT22.getTemperatureC());
      Serial.print("C ");
      Serial.print(myDHT22.getHumidity());
      Serial.println("%");
      
	  
      char buf[128];
      sprintf(buf, "Lecture d'entier uniquement: Température %hi.hi C, Humidité %i.i %% RH",
                   myDHT22.getTemperatureCInt()/10, abs(myDHT22.getTemperatureCInt()),
                   myDHT22.getHumidityInt()/10, myDHT22.getHumidityInt());
      Serial.println(buf);
      break;
    case DHT_ERROR_CHECKSUM:
      Serial.print("Contrôle des erreurs ");
      Serial.print(myDHT22.getTemperatureC());
      Serial.print("C ");
      Serial.print(myDHT22.getHumidity());
      Serial.println("%");
      break;
    case DHT_BUS_HUNG:
      Serial.println("BUS à vérifier ");
      break;
    case DHT_ERROR_NOT_PRESENT:
      Serial.println("Non présent ");
      break;
    case DHT_ERROR_ACK_TOO_LONG:
      Serial.println("ACK délai dépassé");
      break;
    case DHT_ERROR_SYNC_TIMEOUT:
      Serial.println("Délai de synchronistation ");
      break;
    case DHT_ERROR_DATA_TIMEOUT:
      Serial.println("Délai d'expiration des données ");
      break;
    case DHT_ERROR_TOOQUICK:
      Serial.println("Mesure trop rapide ");
      break;
   }
  }


Montage
Code


#define  MAX_RANG      (520)
#define  ADC_SOLUTION      (1023.0)

int pin_ultrason = A0;   
void setup() {
  
  Serial.begin(9600);
}
float dist_t, sensity_t;
void loop() {
  
 sensity_t = analogRead(pin_ultrason);
  

 dist_t = sensity_t * MAX_RANG  / ADC_SOLUTION;
 Serial.print(dist_t,0);
 Serial.println("cm");

 delay(500);

}


Montage
Code


const int pin_bouton = 2;
const int pin_led =  13;
  void setup() {
    pinMode(pin_led, OUTPUT);
    pinMode(pin_bouton, INPUT);
  }
  void loop()
  {
     if (digitalRead(pin_bouton) == HIGH)
     {
       digitalWrite(pin_led, HIGH);
     }
     else {
       digitalWrite(pin_led, LOW);
     }
  }


Motorisation

Montage
Code


#include                           
Servo mon_servo;                                
int pos = 0;                                       
void setup() {
mon_servo.attach(9);    
}                    
void loop() {
for(pos = 0; pos < 180; pos += 1){          
mon_servo.write(pos);                                
delay(15);                                               
}
for(pos = 180; pos>=1; pos-=1) {           
mon_servo.write(pos);                               
delay(15);                                                
}
}

Montage
Code


#define ventilateur 3    

void setup()
{
  pinMode(ventilateur,OUTPUT);
  Serial.begin(9600);    
}
void loop()
{
  int vitesse;
  for(vitesse = 0 ; vitesse <= 255; vitesse+=5)
  {
    analogWrite(ventilateur, vitesse);   
    Serial.println(vitesse);
    delay(30);
  }
}