This code has a delay in the loop, during which time the user inputs will be ignored. So, please modify it and implement a solution that would trigger the needed function when there is an input. // Pin numbers written on the board itself do not correspond to Aurdino pin numbers.Constants are defined to make using this board easier const uint8_t BTN_PIN = 2; const uint8_t LED_PIN = 13; //assigning button;s previous state and LedSate to LOW uint8_t buttonPrevState = LOW; uint8_t ledState = LOW; //defining a new function void setup() { // Assigning the types of input parameters pinMode(BTN_PIN, INPUT_PULLUP); //Assigning the types of output parameters pinMode(LED_PIN, OUTPUT); //begin of process details Serial.begin(9600); } void loop() { //assigning button state to be read mode uint8_t buttonState = digitalRead(BTN_PIN); //To print the following in output window Serial.print(buttonState); Serial.print(buttonPrevState); Serial.print(ledState); Serial.println(""); //check if the button state presently is same as its previous state if(buttonState != buttonPrevState) { ledState = !ledState; digitalWrite(LED_PIN, ledState); } buttonPrevState = buttonState; //The output to be visible for the mentioned time delay duration delay(500);
This code has a delay in the loop, during which time the user inputs will be ignored. So, please modify it and implement a solution that would trigger the needed function when there is an input.
// Pin numbers written on the board itself do not correspond to Aurdino pin
numbers.Constants are defined to make using this board easier
const uint8_t BTN_PIN = 2;
const uint8_t LED_PIN = 13;
//assigning button;s previous state and LedSate to LOW
uint8_t buttonPrevState = LOW;
uint8_t ledState = LOW;
//defining a new function
void setup()
{
// Assigning the types of input parameters
pinMode(BTN_PIN, INPUT_PULLUP);
//Assigning the types of output parameters
pinMode(LED_PIN, OUTPUT);
//begin of process details
Serial.begin(9600);
}
void loop()
{
//assigning button state to be read mode
uint8_t buttonState = digitalRead(BTN_PIN);
//To print the following in output window
Serial.print(buttonState);
Serial.print(buttonPrevState);
Serial.print(ledState);
Serial.println("");
//check if the button state presently is same as its previous state
if(buttonState != buttonPrevState)
{
ledState = !ledState;
digitalWrite(LED_PIN, ledState);
}
buttonPrevState = buttonState;
//The output to be visible for the mentioned time delay duration
delay(500);
Step by step
Solved in 3 steps with 1 images