//вводимо глобальні змінні
int val_pot;
int val_pot_v;
int value;
byte led = 3; // до змінної led присвоюємо номер піна 3
void setup() {
pinMode(led, OUTPUT);//визначаємо як саме буде працювати порт (на вихід)
Serial.begin(9600); // вмикання ком порту зі швидкість 9600 бод
}
void loop() {
val_pot = analogRead(A0); // зчитуємо сигнал з потенціометра
float val_pot_v = 5.0/1024.0 * val_pot; //перетворюємо сигнал у вольти
/*задаємо таку умову: коли напруга на потеціометрі буде 4 В і вище, то світлодіод буде
поступово збільшувати, а потім зменшувати свою яскравість, якщо напруга на потеціометрі
буде менше, то світлодіод не світиться взагалі. При цьому використано цикл for*/
if (val_pot_v >= 4) {
for(value = 0; value < 255; value++) {
analogWrite(led, 255-value);
Serial.println(value); //для зручності виводимо значення, що зростає в ком порт
delay (10); //невеличка затримка для уповільнення процесу
}
for(value = 255; value != 0; value--) {
analogWrite(led, 255-value);
Serial.println(value); //для зручності виводимо значення, що спадає в ком порт
delay (10);
}
}
else {
analogWrite(led, 0);
}
}