2. Katse -Potentsiomeetri kasutamine-:
Kasutatud:
1 potentsiometer
7 juhtmeid
1 diod
1 rezistor

kood:
int sensorPin = 0;
int ledPin = 13;
int sensorValue = 0;
void setup()
{
pinMode(ledPin, OUTPUT);
Serial.begin(9600);
}
void loop() {
sensorValue = analogRead(sensorPin); // loeb analoog sisendi väärtust ja saadab tagasi täisarvu vahemikus 0 kuni 1023. See tähendab 10 bitilist täpsust (2^10 = 1024).
digitalWrite(ledPin, HIGH);
delay(sensorValue);
digitalWrite(ledPin, LOW);
delay(sensorValue);
float voltage = sensorValue * (5.0 / 1023.0); // konverteerime väärtuse (0 – 1023) ja tagastab (0 – 5V):
Serial.printn(voltage); // Saadud tulemused kirjutame Serial Monitori.
}
Video:
Ülesanne 2 Гирлянда-Valguskett:
kasutatud:
1 potentsiometer
10 diodi
15 juhtmeid
10 rezistori

kood:
int sensorPin = 0;
int ledred1 = 13; //red
int ledblue1 = 12; //blue
int ledgreen1 = 11; //green
int ledyellow1 = 10; //yellow
int ledwhite1 = 9; //white
int ledred2 = 8; //red 2
int ledblue2 = 7; //blue 2
int ledgreen2 = 6; //green 2
int ledyellow2 = 5; //yellow 2
int ledwhite2 = 4; //white 2
int sensorValue = 0;
int Value_new;
void setup()
{
pinMode(ledred1, OUTPUT);
pinMode(ledred2, OUTPUT);
pinMode(ledblue1, OUTPUT);
pinMode(ledblue2, OUTPUT);
pinMode(ledgreen1, OUTPUT);
pinMode(ledgreen2, OUTPUT);
pinMode(ledyellow1, OUTPUT);
pinMode(ledyellow2, OUTPUT);
pinMode(ledwhite1, OUTPUT);
pinMode(ledwhite2, OUTPUT);
}
void red_blue()
{
digitalWrite(ledred1, HIGH);
digitalWrite(ledblue1, HIGH);
digitalWrite(ledred2, HIGH);
digitalWrite(ledblue2, HIGH);
delay(1000);
digitalWrite(ledred1, LOW);
digitalWrite(ledblue1, LOW);
digitalWrite(ledred2, LOW);
digitalWrite(ledblue2, LOW);
delay(1000);
}
void green_yellow()
{
digitalWrite(ledgreen1, HIGH);
digitalWrite(ledyellow1, HIGH);
digitalWrite(ledgreen2, HIGH);
digitalWrite(ledyellow2, HIGH);
delay(1000);
digitalWrite(ledgreen1, LOW);
digitalWrite(ledyellow1, LOW);
digitalWrite(ledgreen2, LOW);
digitalWrite(ledyellow2, LOW);
delay(1000);
}
void white()
{
digitalWrite(ledwhite1, HIGH);
digitalWrite(ledwhite2, HIGH);
delay(1000);
digitalWrite(ledwhite1, LOW);
digitalWrite(ledwhite2, LOW);
delay(1000);
}
void one_by_one()
{
digitalWrite(ledred1, HIGH);
delay(1000);
digitalWrite(ledred1, LOW);
delay(1000);
digitalWrite(ledblue1, HIGH);
delay(1000);
digitalWrite(ledblue1, LOW);
delay(1000);
digitalWrite(ledgreen1, HIGH);
delay(1000);
digitalWrite(ledgreen1, LOW);
delay(1000);
digitalWrite(ledyellow1, HIGH);
delay(1000);
digitalWrite(ledyellow1, LOW);
delay(1000);
digitalWrite(ledwhite1, HIGH);
delay(1000);
digitalWrite(ledwhite1, LOW);
delay(1000);
digitalWrite(ledred2, HIGH);
delay(1000);
digitalWrite(ledred2, LOW);
delay(1000);
digitalWrite(ledblue2, HIGH);
delay(1000);
digitalWrite(ledblue2, LOW);
delay(1000);
digitalWrite(ledgreen2, HIGH);
delay(1000);
digitalWrite(ledgreen2, LOW);
delay(1000);
digitalWrite(ledyellow2, HIGH);
delay(1000);
digitalWrite(ledyellow2, LOW);
delay(1000);
digitalWrite(ledwhite2, HIGH);
delay(1000);
digitalWrite(ledwhite2, LOW);
delay(1000);
}
void all_colors()
{
digitalWrite(ledred1, HIGH);
digitalWrite(ledblue1, HIGH);
digitalWrite(ledgreen1, HIGH);
digitalWrite(ledyellow1, HIGH);
digitalWrite(ledwhite1, HIGH);
digitalWrite(ledred2, HIGH);
digitalWrite(ledblue2, HIGH);
digitalWrite(ledgreen2, HIGH);
digitalWrite(ledyellow2, HIGH);
digitalWrite(ledwhite2, HIGH);
delay(1000);
digitalWrite(ledred1, LOW);
digitalWrite(ledblue1, LOW);
digitalWrite(ledgreen1, LOW);
digitalWrite(ledyellow1, LOW);
digitalWrite(ledwhite1, LOW);
digitalWrite(ledred2, LOW);
digitalWrite(ledblue2, LOW);
digitalWrite(ledgreen2, LOW);
digitalWrite(ledyellow2, LOW);
digitalWrite(ledwhite2, LOW);
delay(1000);
}
void loop()
{
Value_new = analogRead(sensorPin);
Value_new=map(Value_new,0,1023,1,5);
if (Value_new==1)
{
red_blue();
}
else if(Value_new==2)
{
green_yellow();
}
else if(Value_new==3)
{
white();
}
else if(Value_new==4)
{
one_by_one();
}
else if(Value_new==5)
{
all_colors();
}
else
{
digitalWrite(ledred1, LOW);
digitalWrite(ledblue1, LOW);
digitalWrite(ledgreen1, LOW);
digitalWrite(ledyellow1, LOW);
digitalWrite(ledwhite1, LOW);
digitalWrite(ledred2, LOW);
digitalWrite(ledblue2, LOW);
digitalWrite(ledgreen2, LOW);
digitalWrite(ledyellow2, LOW);
digitalWrite(ledwhite2, LOW);
}
}
Video:
Serial.begin ja Serial.printn: Printivad ekraanile andmeid süsteemist realsel ajal, näiteks voldid.
analogRead(sensorPin): Lugeb andmeid potentsiomeetrist
map: muutub andmete diapozoon