summaryrefslogtreecommitdiff
path: root/1-scala-led-potenziometro.ino
blob: 62a2d456a01f423e59230732e07b71647fb1d12b (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
int potPin = 2;    // pin analogico potenziometro

int ledPin1 = 3;  //pin dei led
int ledPin2 = 4;  
int ledPin3 = 5;  
int ledPin4 = 6;  
int ledPin5 = 7;  


void setup() {
  pinMode(ledPin1, OUTPUT);  // dichiaro i ledPin come OUTPUT
  pinMode(ledPin2, OUTPUT);
  pinMode(ledPin3, OUTPUT);
  pinMode(ledPin4, OUTPUT);
  pinMode(ledPin5, OUTPUT);
}

void loop() {
  int val = 0;       
  val = analogRead(potPin);    //inserisco in val il valore del potenziometro
  int mappedval = 0; 
  mappedval = map(val, 0, 1023, 0, 5); //mappo il valore dall'intervallo 0-1023 a 0-5
  
  if (mappedval>0) {
    digitalWrite(ledPin1, HIGH);
  } else {
    digitalWrite(ledPin1, LOW);
  }
  
  if (mappedval>1) {
    digitalWrite(ledPin2, HIGH);
  } else {
    digitalWrite(ledPin2, LOW);
  }
  
  if (mappedval>2) {
    digitalWrite(ledPin3, HIGH);
  } else {
    digitalWrite(ledPin3, LOW);
  }
  
  if (mappedval>3) {
    digitalWrite(ledPin4, HIGH);
  } else {
    digitalWrite(ledPin4, LOW);
  }
  
  if (mappedval>4) {
    digitalWrite(ledPin5, HIGH);
  } else {
    digitalWrite(ledPin5, LOW);
  }
  
}