PIEZO_LED_FADE
- Войдите на сайт для отправки комментариев
Сб, 11/06/2016 - 22:26
Есть проект с подсветкой барабанов. На данный момент нужно, чтобы при считывании данных с пьезо-датчика светодиод плавно загорался и плавно затухал до получения следующего значения.
const int piezoPin = A0;
const int ledPin = 9;
const int threshold = 200;
int piezoValue = 0;
float brightness = 0;
float fadeAmount = 0.5;
void setup()
{
pinMode(ledPin, OUTPUT);
pinMode(piezoPin, INPUT);
Serial.begin(9600);
}
void loop()
{
analogWrite(ledPin, brightness);
piezoValue = analogRead(piezoPin);
if (piezoValue >= threshold) {
brightness = 255;
Serial.println (piezoValue);
}
if (brightness != 0 && brightness <= 255) {
brightness -= fadeAmount;
delayMicroseconds(3000);
}
}
Проблема в том, что при постукивании пьезо часто выдает не одно, а несколько значений подряд. Как этого избежать?