float angle = 0; void setup() { Serial.begin(9600); pinMode(11, OUTPUT); pinMode(A0, INPUT); } void loop() { int value = analogRead(A0); //Serial.println(value); if(value < 950) { DoSinBlink(); } else { analogWrite(11, 0); } } void DoSinBlink() { angle += 0.2; if (angle > 359) { angle = 0; } int iDelay = abs((int)(sin(angle) * 255)); Serial.println(iDelay); analogWrite(11, iDelay); delay(iDelay); return; }