int led1 = 13;
int led2 = 12;
int sw1 = 2;
int sw2 = 3;
bool sw_state2=0,last_sw_state,buttonstat2e=1,change=0;
bool state=0;
unsigned long time1;
int debounceDelay=40;
bool LED1State=0;
unsigned long delayTime1;
unsigned long delayA0;
void setup()
{
pinMode(led1,OUTPUT);
pinMode(led2,OUTPUT);
pinMode(sw1,INPUT_PULLUP);
Serial.begin(115200);
}
{
pinMode(sw1,OUTPUT);
pinMode(led2,OUTPUT);
pinMode(sw2,INPUT_PULLUP);
Serial.begin(115200);
}
void loop()
{
checkSW();
if(state==0){ digitalWrite(led2,LOW);}
else{ digitalWrite(led2,HIGH);}
if ((millis() - delayTime1) > 1000)
{
LED1State=!LED1State;
digitalWrite(led1, LED1State);
delayTime1=millis();
}
if ((millis() - delayA0) > 500)
{
int sensorValue = analogRead(A0);
float volt = sensorValue*5.0/1024;
int outputPWM = map(sensorValue,0,1023,0,255);
analogWrite(6,outputPWM);
Serial.print("ADC:");
Serial.print(sensorValue);
Serial.print(" volt:");
Serial.println(volt);
delayA0=millis();
}
}
void checkSW()
{
sw_state=digitalRead(sw1);
if(sw_state!= last_sw_state)
{
time1=millis();
}
if((millis()-time1)>debounceDelay)
{
if(buttonstate!=sw_state)
{
buttonstate2=sw_state;
change=1;
}
}
if((buttonstate2==1)&&(change==1))
{
state=!state;
change=0;
}
if((buttonstate==1)&&(change==1))
{
change=0;
}
last_sw_state=sw_state;
}