Merge pull request #23 from DigitalConfections/master

Update to latest on parent repository
pull/25/head
OpenARDF 2020-08-11 10:56:18 -04:00 zatwierdzone przez GitHub
commit 5e14820a9f
Nie znaleziono w bazie danych klucza dla tego podpisu
ID klucza GPG: 4AEE18F83AFDEB23
4 zmienionych plików z 56 dodań i 13 usunięć

Wyświetl plik

@ -92,7 +92,7 @@ volatile BOOL g_sync_enabled = TRUE;
a = static_cast < FoxType > (a + b); /* static_cast required because enum + int -> int */
return( a);
}
#endif /* COMPILE_FOR_ATMELSTUDIO7 */
#endif /* COMPILE_FOR_ATMELSTUDIO7 */
/***********************************************************************
@ -113,6 +113,7 @@ static uint8_t EEMEM ee_override_DIP_switches;
static uint8_t EEMEM ee_enable_LEDs;
static int16_t EEMEM ee_temp_calibration;
static uint8_t EEMEM ee_enable_start_timer;
static uint8_t EEMEM ee_enable_transmitter;
static char g_messages_text[2][MAX_PATTERN_TEXT_LENGTH + 1] = { "\0", "\0" };
static volatile uint8_t g_id_codespeed = EEPROM_ID_CODE_SPEED_DEFAULT;
@ -124,6 +125,7 @@ static volatile int16_t g_temp_calibration = EEPROM_TEMP_CALIBRATION_DEFAULT;
static volatile uint8_t g_override_DIP_switches = EEPROM_OVERRIDE_DIP_SW_DEFAULT;
static volatile uint8_t g_enable_LEDs;
static volatile uint8_t g_enable_start_timer;
static volatile uint8_t g_enable_transmitter;
static char g_tempStr[TEMP_STRING_LENGTH] = { '\0' };
static volatile uint8_t g_LEDs_Timed_Out = FALSE;
@ -152,7 +154,7 @@ void softwareReset(void);
{
while(initializeEEPROMVars())
{
; /* Initialize variables stored in EEPROM */
; /* Initialize variables stored in EEPROM */
}
setUpTemp();
@ -183,7 +185,7 @@ void softwareReset(void);
pinMode(A2, INPUT_PULLUP);
pinMode(A3, INPUT_PULLUP);
#if !CAL_SIGNAL_ON_PD3
pinMode(PIN_CAL_OUT, INPUT_PULLUP);
pinMode(PIN_CAL_OUT, INPUT_PULLUP);
#endif
/* set timer1 interrupt at 1Hz */
@ -263,6 +265,8 @@ void softwareReset(void);
lb_send_string(g_tempStr, TRUE);
sprintf(g_tempStr, " STA: %s\n", g_enable_start_timer ? "ON" : "OFF");
lb_send_string(g_tempStr, TRUE);
sprintf(g_tempStr, " TXE: %s\n", g_enable_transmitter ? "ON" : "OFF");
lb_send_string(g_tempStr, TRUE);
lb_send_NewPrompt();
#if !HARDWARE_EXTERNAL_DIP_PULLUPS_INSTALLED
@ -687,7 +691,10 @@ ISR( TIMER2_COMPB_vect )
digitalWrite(PIN_LED, HIGH); /* LED */
}
digitalWrite(PIN_MORSE_KEY, HIGH); /* TX key line */
if(g_enable_transmitter)
{
digitalWrite(PIN_MORSE_KEY, HIGH); /* TX key line */
}
}
if(playMorse)
@ -700,11 +707,16 @@ ISR( TIMER2_COMPB_vect )
{
if(!g_LEDs_Timed_Out && !g_sync_pin_stable)
{
digitalWrite(PIN_LED, key); /* LED */
digitalWrite(PIN_LED, key); /* LED */
}
if(g_enable_transmitter)
{
digitalWrite(PIN_MORSE_KEY, key); /* TX key line */
}
digitalWrite(PIN_MORSE_KEY, key); /* TX key line */
codeInc = g_code_throttle;
if(playMorse)
{
sendMorseTone(key);
@ -718,9 +730,10 @@ ISR( TIMER2_COMPB_vect )
key = OFF;
if(!g_sync_pin_stable)
{
digitalWrite(PIN_LED, LOW); /* LED Off */
digitalWrite(PIN_LED, OFF); /* LED Off */
}
digitalWrite(PIN_MORSE_KEY, LOW); /* TX key line */
digitalWrite(PIN_MORSE_KEY, OFF); /* TX key line */
}
if(playMorse)
@ -779,7 +792,7 @@ ISR(TIMER1_COMPA_vect) /*timer1 interrupt 1Hz */
}
g_LEDs_Timed_Out = TRUE;
digitalWrite(PIN_LED,OFF);
digitalWrite(PIN_LED, OFF);
}
g_fox_transition = TRUE;
g_fox_seconds_into_interval = 0;
@ -1166,6 +1179,30 @@ void __attribute__((optimize("O0"))) handleLinkBusMsgs()
}
break;
case MESSAGE_TRANSMITTER_ENABLE:
{
if(lb_buff->fields[FIELD1][0])
{
if((lb_buff->fields[FIELD1][1] == 'F') || (lb_buff->fields[FIELD1][0] == '0'))
{
cli();
g_enable_transmitter = FALSE;
digitalWrite(PIN_MORSE_KEY, OFF);
sei();
}
else
{
g_enable_transmitter = TRUE;
}
saveAllEEPROM();
}
sprintf(g_tempStr,"TXE:%s\n",g_enable_transmitter ? "ON" : "OFF");
lb_send_string(g_tempStr,FALSE);
}
break;
case MESSAGE_GO:
{
doSynchronization();
@ -1352,6 +1389,7 @@ BOOL initializeEEPROMVars()
g_override_DIP_switches = eeprom_read_byte(&ee_override_DIP_switches);
g_enable_LEDs = eeprom_read_byte(&ee_enable_LEDs);
g_enable_start_timer = eeprom_read_byte(&ee_enable_start_timer);
g_enable_transmitter = eeprom_read_byte(&ee_enable_transmitter);
for(i = 0; i < 20; i++)
{
@ -1382,6 +1420,7 @@ BOOL initializeEEPROMVars()
g_override_DIP_switches = EEPROM_OVERRIDE_DIP_SW_DEFAULT;
g_enable_LEDs = EEPROM_ENABLE_LEDS_DEFAULT;
g_enable_start_timer = EEPROM_ENABLE_STARTTIMER_DEFAULT;
g_enable_transmitter = EEPROM_ENABLE_TRANSMITTER_DEFAULT;
strncpy(g_messages_text[STATION_ID],EEPROM_STATION_ID_DEFAULT,MAX_PATTERN_TEXT_LENGTH);
strncpy(g_messages_text[PATTERN_TEXT],EEPROM_PATTERN_TEXT_DEFAULT,MAX_PATTERN_TEXT_LENGTH);
saveAllEEPROM();
@ -1411,6 +1450,7 @@ void saveAllEEPROM()
eeprom_update_byte(&ee_override_DIP_switches,g_override_DIP_switches);
eeprom_update_byte(&ee_enable_LEDs,g_enable_LEDs);
eeprom_update_byte(&ee_enable_start_timer,g_enable_start_timer);
eeprom_update_byte(&ee_enable_transmitter,g_enable_transmitter);
for(i = 0; i < strlen(g_messages_text[STATION_ID]); i++)
{

Wyświetl plik

@ -70,7 +70,7 @@
/******************************************************
* Set the text that gets displayed to the user */
#define SW_REVISION "0.18"
#define SW_REVISION "0.19"
//#define TRANQUILIZE_WATCHDOG
@ -157,7 +157,7 @@ typedef enum
/******************************************************
* EEPROM definitions */
#define EEPROM_INITIALIZED_FLAG 0xB4
#define EEPROM_INITIALIZED_FLAG 0xB5
#define EEPROM_UNINITIALIZED 0x00
#define EEPROM_STATION_ID_DEFAULT "FOXBOX"
@ -177,6 +177,7 @@ typedef enum
#define EEPROM_OVERRIDE_DIP_SW_DEFAULT 0
#define EEPROM_ENABLE_LEDS_DEFAULT 1
#define EEPROM_ENABLE_STARTTIMER_DEFAULT 1
#define EEPROM_ENABLE_TRANSMITTER_DEFAULT 1
#ifndef BOOL
typedef uint8_t BOOL;

Wyświetl plik

@ -50,7 +50,8 @@ static const char textHelp[][23] = { "\nCommands:\n",
" SPD - ID code speed\n",
" STA - Start tones\n",
" TEM - Temperature\n",
" VER - S/W version\n" };
" VER - S/W version\n",
" TXE - Tx enable" };
static char g_tempMsgBuff[LINKBUS_MAX_MSG_LENGTH];

Wyświetl plik

@ -100,7 +100,8 @@ typedef enum
MESSAGE_SET_STATION_ID = 'I' * 10 + 'D', /* Sets amateur radio callsign text */
MESSAGE_GO = 'G' * 10 + 'O', /* Synchronizes clock */
MESSAGE_CODE_SPEED = 'S' * 100 + 'P' * 10 + 'D', /* Set Morse code speeds */
MESSAGE_STARTTONES_ENABLE = 'S' * 100 + 'T' * 10 + 'A', /* Enables the Starting Timer Tones */
MESSAGE_STARTTONES_ENABLE = 'S' * 100 + 'T' * 10 + 'A', /* Enables/disables the Starting Timer Tones */
MESSAGE_TRANSMITTER_ENABLE = 'T' * 100 + 'X' * 10 + 'E', /* Enables/disables transmitter keying */
/* UTILITY MESSAGES */
MESSAGE_RESET = 'R' * 100 + 'S' * 10 + 'T', /* Processor reset */