#define fetPin 2
#define potPin A0
#define ledPin 13
#define highms 500
#define lowms 20
float pot = 0;
float total = 0;
float ondelay = 0;
float offdelay = 0;
void setup()
{
Serial.begin(9600);
pinMode(fetPin, OUTPUT);
pinMode(ledPin, OUTPUT);
pinMode(potPin, INPUT);
total = highms-lowms;
}
void loop()
{
pot = analogRead(potPin);
pot /= 50.0;
pot = 1 - pot;
if(pot > 1) pot = 1;
if(pot < 0.04) pot = 0.04;
offdelay = total*pot*pot;
ondelay = total*pot-offdelay;
Serial.print(pot);
Serial.print(" ");
Serial.print(ondelay);
Serial.print(" ");
Serial.println(offdelay);
digitalWrite(ledPin, 1);
digitalWrite(fetPin, 1);
delay(ondelay);
digitalWrite(ledPin, 0);
digitalWrite(fetPin, 0);
delay(offdelay);
}