CCCPaste

Potentiometer Control rev_04

/********* Pleasedontcode.com **********

	Pleasedontcode thanks you for automatic code generation! Enjoy your code!

	- Terms and Conditions:
	You have a non-exclusive, revocable, worldwide, royalty-free license
	for personal and commercial use. Attribution is optional; modifications
	are allowed, but you're responsible for code maintenance. We're not
	liable for any loss or damage. For full terms,
	please visit pleasedontcode.com/termsandconditions.

	- Project: Potentiometer Control
	- Source Code NOT compiled for: Arduino Uno
	- Source Code created on: 2025-10-31 08:23:58

********* Pleasedontcode.com **********/

/****** SYSTEM REQUIREMENTS *****/
/****** SYSTEM REQUIREMENT 1 *****/
	/* The RGB_blink project controls an LED connected to */
	/* digital pin D2, utilizing a potentiometer on */
	/* analog pin A0 to adjust time in between blinking. */
	/* Ensure proper wiring and component compatibility */
	/* for optimal performance. */
/****** END SYSTEM REQUIREMENTS *****/


/* START CODE */

/****** DEFINITION OF LIBRARIES *****/

/****** FUNCTION PROTOTYPES *****/
void setup(void);
void loop(void);

/***** DEFINITION OF ANALOG INPUT PINS *****/
const uint8_t mypot_Potentiometer_Vout_PIN_A0		= A0;

/***** DEFINITION OF DIGITAL OUTPUT PINS *****/
const uint8_t myLed_LED_PIN_D2		= 2;

// Variables to hold delay time
unsigned long delayTime = 0;

// Variable to hold previous time
unsigned long previousMillis = 0;

void setup(void)
{
    // put your setup code here, to run once:

    pinMode(mypot_Potentiometer_Vout_PIN_A0, INPUT);
    pinMode(myLed_LED_PIN_D2, OUTPUT);
}

void loop(void)
{
    // Read the potentiometer value (0-1023)
    int sensorValue = analogRead(mypot_Potentiometer_Vout_PIN_A0);
    // Map the potentiometer value to delay time (e.g., 0-2000 milliseconds)
    delayTime = map(sensorValue, 0, 1023, 0, 2000);

    unsigned long currentMillis = millis();
    if (currentMillis - previousMillis >= delayTime) {
        // Save the last time LED was updated
        previousMillis = currentMillis;
        // Toggle the LED
        digitalWrite(myLed_LED_PIN_D2, !digitalRead(myLed_LED_PIN_D2));
    }
}

/* END CODE */