/* ADC and LEDs Circuit connections: Potensiometer_Terminal_1 => Gnd Potensiometer_Wiper => A0 Potensiometer_Terminal_2 => Vcc PIN_0 => Resistor 220Ω => LED1_Anode – LED1_Cathode = > Gnd PIN_1 => Resistor 220Ω => LED2_Anode – LED2_Cathode = > Gnd PIN_2 => Resistor 220Ω => LED3_Anode – LED3_Cathode = > Gnd PIN_3 => Resistor 220Ω => LED4_Anode – LED4_Cathode = > Gnd PIN_4 => Resistor 220Ω => LED5_Anode – LED5_Cathode = > Gnd */ #define LED1_pin 0 //give the name “LED1_pin” to PIN_0 #define LED2_pin 1 //give the name “LED2_pin” to PIN_1 #define LED3_pin 2 //give the name “LED3_pin” to PIN_2 #define LED4_pin 3 //give the name “LED4_pin” to PIN_3 #define LED5_pin 4 //give the name “LED5_pin” to PIN_4 #define pot_pin A0 //give the name “pot_pin” to PIN_A0 //variable to save data from ADC int adc_value; //number range 0~1023 //variable to calculate the analog voltage //The setup() function initializes and sets the initial values //It will only run once after each power up or reset void setup() { //Configure PIN_0, PIN_1, PIN_2, PIN_3 and PIN_4 to behave as output pinMode(LED1_pin, OUTPUT); pinMode(LED2_pin, OUTPUT); pinMode(LED3_pin, OUTPUT); pinMode(LED4_pin, OUTPUT); pinMode(LED5_pin, OUTPUT); } //This function loops consecutively void loop() { //read analog voltage and convert to number adc_value = analogRead(pot_pin); //check if voltage < 1V if(adc_value<204){ //activate LED1 digitalWrite(LED1_pin, HIGH); digitalWrite(LED2_pin, LOW); digitalWrite(LED3_pin, LOW); digitalWrite(LED4_pin, LOW); digitalWrite(LED5_pin, LOW); } //check if voltage < 2V else if(adc_value<408){ //activate LED1 and LED2 digitalWrite(LED1_pin, HIGH); digitalWrite(LED2_pin, HIGH); digitalWrite(LED3_pin, LOW); digitalWrite(LED4_pin, LOW); digitalWrite(LED5_pin, LOW); } //check if voltage < 3V else if (adc_value<612){ //activate LED1, LED2 and LED3 digitalWrite(LED1_pin, HIGH); digitalWrite(LED2_pin, HIGH); digitalWrite(LED3_pin, HIGH); digitalWrite(LED4_pin, LOW); digitalWrite(LED5_pin, LOW); } //check if voltage < 4V else if(adc_value<816){ //activate LED1, LED2, LED3 and LED4 digitalWrite(LED1_pin, HIGH); digitalWrite(LED2_pin, HIGH); digitalWrite(LED3_pin, HIGH); digitalWrite(LED4_pin, HIGH); digitalWrite(LED5_pin, LOW); } // if voltage < 5V else{//if(adc_value<1023){ //activate all LEDs digitalWrite(LED1_pin, HIGH); digitalWrite(LED2_pin, HIGH); digitalWrite(LED3_pin, HIGH); digitalWrite(LED4_pin, HIGH); digitalWrite(LED5_pin, HIGH); } delay(250); //wait for 250ms }