arduino-sketches

Subversion Repositories:
Compare Path: Rev
With Path: Rev
?path1? @ 19  →  ?path2? @ 20
/arduinoHAMVOX/arduinoHAMVOX.ino
@@ -0,0 +1,64 @@
#include "TickTwo.h"
const int LED_PIN = D5;
const int MIC_PIN = A0;
const int PTT_PIN = D8;
const int VOX_DELAY = 1000;
// irrelevant TickTwo.h semantics
void pttClose();
TickTwo ticker1(pttClose, 0, 1, MILLIS);
bool transmitting;
void setup() {
// configure PTT pin as an digital out
pinMode(LED_PIN, OUTPUT);
pinMode(PTT_PIN, OUTPUT);
// configure MIC pin as a digital input
pinMode(MIC_PIN, INPUT);
// DEBUG
//Serial.begin(9600);
// deactivate PTT transistor switch / PTT low (start broadcast)
digitalWrite(LED_PIN, LOW);
digitalWrite(PTT_PIN, LOW);
// alarm(MIN)
ticker1.start();
}
void loop() {
// irrelevant TickTwo.h semantics
ticker1.update();
// read the MIC pin
int val = analogRead(MIC_PIN);
// DEBUG
//Serial.println(val);
// if mic sensor is low (audio playing)
if (val == 1024 && !transmitting) {
// activate PTT switch / PTT low (start broadcast)
//Serial.println("PTT activated...");
digitalWrite(LED_PIN, HIGH);
digitalWrite(PTT_PIN, HIGH);
// alarm(5000)
ticker1.interval(VOX_DELAY);
ticker1.resume();
transmitting = true;
return;
}
transmitting = false;
}
void pttClose() {
// deactivate PTT transistor switch / PTT low (start broadcast)
//Serial.println("PTT deactivated...");
digitalWrite(LED_PIN, LOW);
digitalWrite(PTT_PIN, LOW);
transmitting = false;
}