const unsigned long eventInterval_1 = 1;
const unsigned long eventInterval_2 = 76;
const unsigned long eventInterval_3 = 151;
int LED_1 = 10; //Bias resistor isolation relay
int LED_2 = 11; //Antenna changeover relay (RF OUTPUT)
int LED_3 = 12; //Antenna changeover relay (RF INPUT)
int LED_4 = 13; //Filament xfrmr soft start resistor (OUT) relay
unsigned long previousTime_1 = 0;
unsigned long previousTime_2 = 0;
unsigned long previousTime_3 = 0;
const int BUTTON = 7;
int BUTTONstate = 0;
void setup()
{
Serial.begin(9600);
pinMode(LED_1,OUTPUT);
pinMode(LED_2,OUTPUT);
pinMode(LED_3,OUTPUT);
pinMode(LED_4,OUTPUT);
pinMode(BUTTON, INPUT); // PTT Close
}
void loop()
{
BUTTONstate = digitalRead(BUTTON);
if (BUTTONstate == HIGH)
{PTT_C();}
else
{PTT_O();}
}
void PTT_C()
{
unsigned long currentTime = millis();
if (currentTime - previousTime_1 >= eventInterval_1)
{
digitalWrite(LED_1,HIGH);
previousTime_1 = currentTime;
}
else if (currentTime - previousTime_2 >= eventInterval_2)
{
digitalWrite(LED_2,HIGH);
previousTime_2 = currentTime;
}
else if (currentTime - previousTime_3 >= eventInterval_3)
{
digitalWrite(LED_3,HIGH);
previousTime_3 = currentTime;
}
}
void PTT_O()
{
unsigned long currentTime = millis();
if (currentTime - previousTime_3 >= eventInterval_1)
{
digitalWrite(LED_3,LOW);
previousTime_3 = currentTime;
}
else if (currentTime - previousTime_2 >= eventInterval_2)
{
digitalWrite(LED_2,LOW);
previousTime_2 = currentTime;
}
else if (currentTime - previousTime_1 >= eventInterval_3)
{
digitalWrite(LED_1,LOW);
previousTime_1 = currentTime;
}
}