ANALOGICO
Esercizio 1

In questo esercizio, regolando il voltaggio con il timmer, accendiamo e spegniamo in sequenza i diodi LED partendo dal primo fino al decimo e viceversa.

Sketch dell'esercizio

logoinformatici
// Esercizio 1 - ANALOGICO // these constants won't change: const int analogPin = A1;   // the pin that the potentiometer is attached to const int ledCount = 10;    // the number of LEDs in the bar graph int ledPins[] = {  13, 12, 11, 10, 9, 8, 7, 6, 5, 4 };   // an array of pin numbers to which LEDs are attached void setup() {  // loop over the pin array and set them all to output:  for (int thisLed = 0; thisLed < ledCount; thisLed++) {    pinMode(ledPins[thisLed], OUTPUT);  } } void loop() {  // read the potentiometer:  int sensorReading = analogRead(analogPin);  // map the result to a range from 0 to the number of LEDs:  int ledLevel = map(sensorReading, 0, 1023, 0, ledCount);  // loop over the LED array:  for (int thisLed = 0; thisLed < ledCount; thisLed++) {    // if the array element's index is less than ledLevel,    // turn the pin for this element on:    if (thisLed < ledLevel) {      digitalWrite(ledPins[thisLed], HIGH);    }    // turn off all pins higher than the ledLevel:    else {      digitalWrite(ledPins[thisLed], LOW);    }  } }
©informatici.pietrocoppo.net

ANALOGICO
Esercizio 2

In questo esercizio, regolando il voltaggio con il trimmer, accendendo e spegniamo in sequenza solamente un diodo LED dal primo fino al decimo e viceversa.

Sketch dell'esercizio

logoinformatici
// Esercizio 2 - ANALOGICO // these constants won't change: const int analogPin = A1;   // the pin that the potentiometer is attached to const int ledCount = 10;    // the number of LEDs in the bar graph int last = 0; int thisLed; int ledPins[] = {  13, 12, 11, 10, 9, 8, 7, 6, 5, 4 };   // an array of pin numbers to which LEDs are attached void setup() {  // loop over the pin array and set them all to output:  for (int thisLed = 0; thisLed < ledCount; thisLed++) {    pinMode(ledPins[thisLed], OUTPUT);  } } void loop() {  // read the potentiometer:  int sensorReading = analogRead(analogPin);  // map the result to a range from 0 to the number of LEDs:  int ledLevel = map(sensorReading, 0, 1023, 0, ledCount-1);  if(ledLevel != last)  {    for (thisLed = 0; thisLed < ledCount; thisLed++)    {      digitalWrite(ledPins[thisLed], HIGH);    }    digitalWrite(ledPins[ledLevel], LOW);    last = ledLevel;    }   }
©informatici.pietrocoppo.net

ANALOGICO
Esercizio 3

In questo esercizio, regolando il voltaggio con il trimmer, regoliamo la velocità di scorrimento sequenziale dei dieci diodi Led.

Sketch dell'esercizio

logoinformatici
// Supercar 3 - ANALOGICO int i; const int analogPin = A1;   // the pin that the potentiometer is attached to int direzione = 0; int tempo= 80; void setup(){    int i;    pinMode (i, OUTPUT );    for (i=4; i<14; i++){        pinMode (i, OUTPUT ); //setta come output digitale        digitalWrite(i, HIGH); //spegne il led    } } void loop(){  tempo = analogRead(analogPin);  if (direzione == 0)  {    for(i=5;i<14;i++)    {      digitalWrite( i , LOW); //accende il pin      delay (tempo); // aspetta mezzo secondo (1 secondo = 1000 millisecondi)      digitalWrite( i , HIGH); //accende il pin    }    if ( i >= 13) direzione =1;  }  else  {    for(i=12;i>3;i--)    {      digitalWrite( i , LOW); //accende il pin      delay (tempo); // aspetta mezzo secondo (1 secondo = 1000 millisecondi)      digitalWrite( i , HIGH); //accende il pin    }     if ( i <= 4) direzione = 0;  } }
©informatici.pietrocoppo.net