Added IF Tune, ATT, SDR Functions
This commit is contained in:
@@ -441,6 +441,37 @@ void menuTxOnOff(int btn, byte optionType){
|
||||
}
|
||||
}
|
||||
|
||||
//Toggle SDR MODE
|
||||
void menuSDROnOff(int btn)
|
||||
{
|
||||
if (!btn){
|
||||
if (sdrModeOn == 0)
|
||||
printLineF2(F("SDR Mode On?"));
|
||||
else
|
||||
printLineF2(F("SDR Mode Off?"));
|
||||
}
|
||||
else {
|
||||
if (sdrModeOn == 1){
|
||||
sdrModeOn = 0;
|
||||
printLineF2(F("[OFF]"));
|
||||
}
|
||||
else {
|
||||
sdrModeOn = 1;
|
||||
|
||||
if (ritOn == 1)
|
||||
ritOn = 0;
|
||||
|
||||
if (splitOn == 1)
|
||||
splitOn = 0;
|
||||
|
||||
printLineF2(F("[ON]"));
|
||||
}
|
||||
|
||||
setFrequency(frequency);
|
||||
menuClearExit(500);
|
||||
}
|
||||
}
|
||||
|
||||
void displayEmptyData(void){
|
||||
printLineF2(F("Empty data"));
|
||||
delay_background(2000, 0);
|
||||
@@ -548,9 +579,10 @@ void menuSetupCWCarrier(int btn){
|
||||
//valueType 0 : Normal
|
||||
// 1 : CW Change -> Generate Tone
|
||||
// 2 : IF Shift Setup -> SetFrequency, Set SideTone
|
||||
// 3 : Select Mode (different display type)
|
||||
// 5 : ATT
|
||||
// 11 : Select Mode (different display type)
|
||||
//knobSensitivity : 1 ~
|
||||
int getValueByKnob(int valueType, int targetValue, int minKnobValue, int maxKnobValue, int incStep, char* displayTitle, int knobSensitivity)
|
||||
int getValueByKnob(int valueType, int targetValue, int minKnobValue, int maxKnobValue, int incStep, const char* displayTitle, int knobSensitivity)
|
||||
{
|
||||
int knob;
|
||||
int moveDetectStep = 0;
|
||||
@@ -558,7 +590,7 @@ int getValueByKnob(int valueType, int targetValue, int minKnobValue, int maxKnob
|
||||
char isInitDisplay = 1;
|
||||
delay_background(300, 0); //Default Delay
|
||||
|
||||
if (valueType < 3)
|
||||
if (valueType < 10)
|
||||
{
|
||||
strcpy(b, "Press, set ");
|
||||
strcat(b, displayTitle);
|
||||
@@ -597,7 +629,7 @@ int getValueByKnob(int valueType, int targetValue, int minKnobValue, int maxKnob
|
||||
|
||||
strcpy(b, displayTitle);
|
||||
|
||||
if (valueType == 3) //Mode Select
|
||||
if (valueType == 11) //Mode Select
|
||||
{
|
||||
b[targetValue * 4] = '>';
|
||||
}
|
||||
@@ -625,9 +657,13 @@ int getValueByKnob(int valueType, int targetValue, int minKnobValue, int maxKnob
|
||||
{
|
||||
tone(CW_TONE, targetValue);
|
||||
}
|
||||
else if (valueType == 2)
|
||||
else if (valueType == 2 || valueType == 5 ) // 2:IFS, 5:ATT
|
||||
{
|
||||
ifShiftValue = targetValue;
|
||||
if (valueType == 2)
|
||||
ifShiftValue = targetValue;
|
||||
else
|
||||
attLevel = targetValue;
|
||||
|
||||
setFrequency(frequency);
|
||||
SetCarrierFreq();
|
||||
}
|
||||
@@ -912,6 +948,31 @@ void menuIFSSetup(int btn){
|
||||
}
|
||||
}
|
||||
|
||||
//ATT SETUP (IF1(45MHZ) SHIFT), by KD8CEC
|
||||
void menuATTSetup(int btn){
|
||||
int knob = 0;
|
||||
char needApplyChangeValue = 1;
|
||||
|
||||
if (!btn){
|
||||
if (isIFShift == 1)
|
||||
printLineF2(F("ATT Change?"));
|
||||
else
|
||||
printLineF2(F("ATT On?"));
|
||||
}
|
||||
else
|
||||
{
|
||||
attLevel = getValueByKnob(5, attLevel, 0, 200, 5, "ATT", 2); //2 : (SetFrequency), targetValue, minKnobValue, maxKnobValue, stepSize
|
||||
delay_background(500, 0); //for check Long Press function key
|
||||
|
||||
if (btnDown() || attLevel == 0)
|
||||
{
|
||||
attLevel = 0;
|
||||
setFrequency(frequency);
|
||||
//SetCarrierFreq();
|
||||
}
|
||||
menuClearExit(0);
|
||||
}
|
||||
}
|
||||
|
||||
//Functions for CWL and CWU by KD8CEC
|
||||
void menuSelectMode(int btn){
|
||||
@@ -939,7 +1000,7 @@ void menuSelectMode(int btn){
|
||||
|
||||
//delay_background(500, 0);
|
||||
|
||||
selectModeType = getValueByKnob(3, selectModeType, 0, 3, 1, " LSB USB CWL CWU", 4); //3 : Select Mode, targetValue, minKnobValue, maxKnobValue, stepSize
|
||||
selectModeType = getValueByKnob(11, selectModeType, 0, 3, 1, " LSB USB CWL CWU", 4); //3 : Select Mode, targetValue, minKnobValue, maxKnobValue, stepSize
|
||||
|
||||
/*
|
||||
while(!btnDown()){
|
||||
@@ -1011,8 +1072,8 @@ void menuSetupKeyType(int btn){
|
||||
//delay_background(500, 0);
|
||||
selectedKeyType = cwKeyType;
|
||||
|
||||
//selectedKeyType = getValueByKnob(4, selectedKeyType, 0, 2, 1, " KEY:", 5); //4 : Select Key Type, targetValue, minKnobValue, maxKnobValue, stepSize
|
||||
selectedKeyType = getValueByKnob(3, selectedKeyType, 0, 2, 1, " ST IA IB", 5); //4 : Select Key Type, targetValue, minKnobValue, maxKnobValue, stepSize
|
||||
//selectedKeyType = getValueByKnob(12, selectedKeyType, 0, 2, 1, " KEY:", 5); //4 : Select Key Type, targetValue, minKnobValue, maxKnobValue, stepSize
|
||||
selectedKeyType = getValueByKnob(11, selectedKeyType, 0, 2, 1, " ST IA IB", 5); //4 : Select Key Type, targetValue, minKnobValue, maxKnobValue, stepSize
|
||||
|
||||
/*
|
||||
while(!btnDown()){
|
||||
@@ -1170,14 +1231,13 @@ void doMenu(){
|
||||
if (i > 0){
|
||||
if (modeCalibrate && select + i < 240)
|
||||
select += i;
|
||||
if (!modeCalibrate && select + i < 130)
|
||||
else if (!modeCalibrate && select + i < 150)
|
||||
select += i;
|
||||
}
|
||||
else if (i < 0 && select - i >= -10)
|
||||
select += i;
|
||||
|
||||
if (i < 0 && select - i >= -10)
|
||||
select += i; //caught ya, i is already -ve here, so you add it
|
||||
|
||||
//if -> switch reduce program memory 200byte
|
||||
//if -> switch : reduce program memory 200byte
|
||||
switch (select / 10)
|
||||
{
|
||||
case 0 :
|
||||
@@ -1196,60 +1256,65 @@ void doMenu(){
|
||||
menuIFSSetup(btnState);
|
||||
break;
|
||||
case 5 :
|
||||
menuCWSpeed(btnState);
|
||||
menuATTSetup(btnState);
|
||||
break;
|
||||
case 6 :
|
||||
menuSplitOnOff(btnState); //SplitOn / off
|
||||
menuCWSpeed(btnState);
|
||||
break;
|
||||
case 7 :
|
||||
menuCHMemory(btnState, 0); //VFO to Memroy
|
||||
menuSplitOnOff(btnState); //SplitOn / off
|
||||
break;
|
||||
case 8 :
|
||||
menuCHMemory(btnState, 1); //Memory to VFO
|
||||
menuCHMemory(btnState, 0); //VFO to Memroy
|
||||
break;
|
||||
case 9 :
|
||||
menuCWAutoKey(btnState);
|
||||
menuCHMemory(btnState, 1); //Memory to VFO
|
||||
break;
|
||||
case 10 :
|
||||
menuWSPRSend(btnState);
|
||||
menuCWAutoKey(btnState);
|
||||
break;
|
||||
case 11 :
|
||||
menuSetup(btnState);
|
||||
menuWSPRSend(btnState);
|
||||
break;
|
||||
case 12 :
|
||||
menuExit(btnState);
|
||||
menuSDROnOff(btnState);
|
||||
break;
|
||||
case 13 :
|
||||
menuSetupCalibration(btnState); //crystal
|
||||
menuSetup(btnState);
|
||||
break;
|
||||
case 14 :
|
||||
menuSetupCarrier(btnState); //lsb
|
||||
menuExit(btnState);
|
||||
break;
|
||||
case 15 :
|
||||
menuSetupCWCarrier(btnState); //lsb
|
||||
menuSetupCalibration(btnState); //crystal
|
||||
break;
|
||||
case 16 :
|
||||
menuSetupCwTone(btnState);
|
||||
menuSetupCarrier(btnState); //ssb
|
||||
break;
|
||||
case 17 :
|
||||
menuSetupCwDelay(btnState);
|
||||
menuSetupCWCarrier(btnState); //cw
|
||||
break;
|
||||
case 18 :
|
||||
menuSetupCwTone(btnState);
|
||||
break;
|
||||
case 19 :
|
||||
menuSetupCwDelay(btnState);
|
||||
break;
|
||||
case 20 :
|
||||
menuSetupTXCWInterval(btnState);
|
||||
break;
|
||||
case 19 :
|
||||
case 21 :
|
||||
menuSetupKeyType(btnState);
|
||||
break;
|
||||
case 20 :
|
||||
case 22 :
|
||||
menuADCMonitor(btnState);
|
||||
break;
|
||||
case 21 :
|
||||
case 23 :
|
||||
menuTxOnOff(btnState, 0x01); //TX OFF / ON
|
||||
break;
|
||||
default :
|
||||
menuExit(btnState); break;
|
||||
}
|
||||
|
||||
}
|
||||
Check_Cat(0); //To prevent disconnections
|
||||
}
|
||||
}
|
||||
|
Reference in New Issue
Block a user