Merge pull request #23 from DigitalConfections/master
Update to latest on parent repositorypull/25/head
commit
5e14820a9f
|
@ -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++)
|
||||
{
|
||||
|
|
|
@ -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;
|
||||
|
|
|
@ -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];
|
||||
|
||||
|
|
|
@ -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 */
|
||||
|
|
Ładowanie…
Reference in New Issue