Hi I am very much a newbie at this I have been using delay for my code but it is causing problems for executing keyboard presses. I am trying to find a simple alternative. I have tried Millis and it didn't work well for me. I am just trying to get LEDs to blink at a 500 milliseconds on off pattern and a 250 milliseconds on off pattern. I just want a simple line of code to go on top of where I digitalWrite my LEDs. Something like 'Blink(500)' or 'On(500)'. How would I define something like that? Thanks for any help you can provide! Code is below.
const int PowerSwitch = 12;
const int Floorlight = 11;
const int FloorButton = 10;
const int Stopresetlight = 9;
const int StopresetButton = 8;
const int Stoplight = 7;
const int StopButton = 6;
const int GatesSwitch = 5;
const int Harnesslight = 4;
const int HarnessButton = 3;
const int Dispatchlight = 2;
const int DispatchButton = 1;
boolean DispatchButtonbuttonPressed;
boolean GatesSwitchbuttonPressed;
#include <Keyboard.h>
void setup() {
pinMode(Dispatchlight,OUTPUT);
pinMode(DispatchButton, INPUT_PULLUP);
pinMode(Harnesslight, OUTPUT);
pinMode(HarnessButton, INPUT_PULLUP);
pinMode(GatesSwitch, INPUT_PULLUP);
pinMode(StopButton, INPUT_PULLUP);
pinMode(Stoplight, OUTPUT);
pinMode(StopresetButton, INPUT_PULLUP);
pinMode(Stopresetlight, OUTPUT);
pinMode(FloorButton, INPUT_PULLUP);
pinMode(Floorlight, OUTPUT);
pinMode(PowerSwitch, INPUT_PULLUP);
digitalWrite(DispatchButton, HIGH);
digitalWrite(HarnessButton, HIGH);
digitalWrite(GatesSwitch, HIGH);
digitalWrite(StopButton, HIGH);
digitalWrite(StopresetButton, HIGH);
digitalWrite(FloorButton, HIGH);
digitalWrite(PowerSwitch, HIGH);
}
void loop() {
if(digitalRead(GatesSwitch) == LOW) {
GatesSwitchbuttonPressed = true;
}else{
GatesSwitchbuttonPressed = false;
}
if(GatesSwitchbuttonPressed == true){
Keyboard.press(0xCB);
Keyboard.release(0xCB);
digitalWrite(Dispatchlight, LOW);
digitalWrite(Stopresetlight,LOW);
digitalWrite(Harnesslight,LOW);
digitalWrite(Floorlight,LOW);
digitalWrite(Stoplight,LOW);
}if(GatesSwitchbuttonPressed == false){
Keyboard.press(0xCC);
Keyboard.release(0xCC);
if (digitalRead(DispatchButton) == HIGH) {
DispatchButtonbuttonPressed = true;
} else {
DispatchButtonbuttonPressed = false;
}
if(DispatchButtonbuttonPressed == true) {
Keyboard.press(0xCD);
Keyboard.release(0xCD);
digitalWrite(Dispatchlight, HIGH);
digitalWrite(Stopresetlight,HIGH);
digitalWrite(Harnesslight,HIGH);
digitalWrite(Floorlight,HIGH);
digitalWrite(Stoplight,HIGH);
delay(500);
digitalWrite(Stoplight,LOW);
delay(500);
}
else {
digitalWrite(Dispatchlight, HIGH);
digitalWrite(Stopresetlight,HIGH);
digitalWrite(Harnesslight,HIGH);
digitalWrite(Floorlight,HIGH);
digitalWrite(Stoplight,HIGH);
delay(500);
digitalWrite(Dispatchlight, LOW);
digitalWrite(Stopresetlight,LOW);
digitalWrite(Harnesslight,LOW);
digitalWrite(Floorlight,LOW);
digitalWrite(Stoplight,LOW);
delay(500);
}
}
}