Serial and pip attenuation
This commit is contained in:
parent
59e51fce3d
commit
a298a37c08
@ -1,14 +1,13 @@
|
|||||||
#include "config.h"
|
#include "config.h"
|
||||||
#include "repeater.h"
|
#include "repeater.h"
|
||||||
|
|
||||||
#define PIP_OUT 13
|
|
||||||
|
|
||||||
void setup() {
|
void setup() {
|
||||||
pinMode(3, OUTPUT);
|
pinMode(3, OUTPUT);
|
||||||
pinMode(8, OUTPUT);
|
pinMode(8, OUTPUT);
|
||||||
pinMode(9, OUTPUT);
|
pinMode(9, OUTPUT);
|
||||||
pinMode(7, INPUT);
|
pinMode(7, INPUT_PULLUP);
|
||||||
pinMode(6, INPUT_PULLUP);
|
pinMode(6, INPUT_PULLUP);
|
||||||
|
pinMode(PIP_ATT, OUTPUT);
|
||||||
}
|
}
|
||||||
|
|
||||||
void loop() {
|
void loop() {
|
||||||
@ -35,13 +34,15 @@ void loop() {
|
|||||||
|
|
||||||
delay(1000);
|
delay(1000);
|
||||||
myrpt->transmitter.tx = true;
|
myrpt->transmitter.tx = true;
|
||||||
//sendID(myrpt);
|
sendID(myrpt);
|
||||||
myrpt->state = SLEEP;
|
myrpt->state = SLEEP;
|
||||||
|
|
||||||
unsigned long ht = millis();
|
unsigned long ht = millis();
|
||||||
unsigned long tot = ht;
|
unsigned long tot = ht;
|
||||||
unsigned long kc;
|
unsigned long kc;
|
||||||
unsigned long id = ht;
|
unsigned long id = ht;
|
||||||
|
serial_writer(&myrpt->serial, "READY");
|
||||||
|
digitalWrite(PIP_ATT, LOW);
|
||||||
while (1) {
|
while (1) {
|
||||||
rx(myrpt);
|
rx(myrpt);
|
||||||
|
|
||||||
|
@ -2,6 +2,7 @@
|
|||||||
#define CONFIG_H
|
#define CONFIG_H
|
||||||
|
|
||||||
/* IO */
|
/* IO */
|
||||||
|
#define PIP_ATT 13
|
||||||
#define GW_COS 6
|
#define GW_COS 6
|
||||||
#define COS 7
|
#define COS 7
|
||||||
#define PTT 8
|
#define PTT 8
|
||||||
@ -26,7 +27,7 @@
|
|||||||
#define TAILPIP_PITCH 500
|
#define TAILPIP_PITCH 500
|
||||||
|
|
||||||
/* SERIAL */
|
/* SERIAL */
|
||||||
#define SERIAL false
|
#define SERIAL true
|
||||||
#define SERIAL_SPEED 115200
|
#define SERIAL_SPEED 115200
|
||||||
|
|
||||||
/* TIMERS */
|
/* TIMERS */
|
||||||
|
15
GB3TX/cw.ino
15
GB3TX/cw.ino
@ -37,14 +37,27 @@ void sendChar(int speed, int pitch, char c) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
void sendID(repeater* myrpt) {
|
void sendID(repeater* myrpt) {
|
||||||
|
bool pip_att = false;
|
||||||
if (myrpt->callsign == NULL) {
|
if (myrpt->callsign == NULL) {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
for (int i=0; i < sizeof ID/sizeof ID[0]; i++) {
|
for (int i=0; i < sizeof ID/sizeof ID[0]; i++) {
|
||||||
|
/* attenuate pips in active T/T
|
||||||
|
* unless first ID from sleep
|
||||||
|
*/
|
||||||
|
if (myrpt->state != KEYCHUNK && busy(myrpt) && !pip_att) {
|
||||||
|
pip_att = true;
|
||||||
|
digitalWrite(PIP_ATT, HIGH);
|
||||||
|
}
|
||||||
|
|
||||||
sendChar(myrpt->params.cw_speed, myrpt->params.cw_pitch, myrpt->callsign[i]);
|
sendChar(myrpt->params.cw_speed, myrpt->params.cw_pitch, myrpt->callsign[i]);
|
||||||
delay(myrpt->params.cw_speed * 3);
|
delay(myrpt->params.cw_speed * 3);
|
||||||
}
|
|
||||||
|
|
||||||
|
if (!busy(myrpt) && pip_att) {
|
||||||
|
pip_att = false;
|
||||||
|
digitalWrite(PIP_ATT, LOW);
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user