You've already forked TEF6686_ESP32
Add SW MI band display and switch
Todo: @PE5PVB 1. Can add an menu option byte showSWMIBand = 1; // Fix Me: Menu options: 0: don't show 1: show up 2. Need to store and restore the last SWMIBandPosold uint16_t SWMIBandPosold; // Fix Me: Should store this parameter into flash, for use of restart.
This commit is contained in:
@@ -135,6 +135,11 @@ unsigned int MWHighEdgeSet;
|
||||
unsigned int MWLowEdgeSet;
|
||||
unsigned int SWHighEdgeSet;
|
||||
unsigned int SWLowEdgeSet;
|
||||
byte showSWMIBand = 1; // Fix Me: Menu options: 0: don't show 1: show up
|
||||
uint16_t SWMIBandPos;
|
||||
uint16_t SWMIBandPosold; // Fix Me: Should store this parameter into flash, for use of restart.
|
||||
String SWMIBandstring = String();
|
||||
String SWMIBandstringold = String();
|
||||
int lowsignaltimer;
|
||||
int menuoption = 30;
|
||||
int MStatusold;
|
||||
@@ -185,6 +190,21 @@ unsigned int frequency_LW;
|
||||
unsigned int frequency_MW;
|
||||
unsigned int frequency_SW;
|
||||
unsigned int frequencyold;
|
||||
unsigned int frequency_MIBand_11M; // Surive before tuner restart
|
||||
unsigned int frequency_MIBand_13M;
|
||||
unsigned int frequency_MIBand_15M;
|
||||
unsigned int frequency_MIBand_16M;
|
||||
unsigned int frequency_MIBand_19M;
|
||||
unsigned int frequency_MIBand_22M;
|
||||
unsigned int frequency_MIBand_25M;
|
||||
unsigned int frequency_MIBand_31M;
|
||||
unsigned int frequency_MIBand_41M;
|
||||
unsigned int frequency_MIBand_49M;
|
||||
unsigned int frequency_MIBand_60M;
|
||||
unsigned int frequency_MIBand_75M;
|
||||
unsigned int frequency_MIBand_90M;
|
||||
unsigned int frequency_MIBand_120M;
|
||||
unsigned int frequency_MIBand_160M;
|
||||
unsigned int memory[30];
|
||||
unsigned int scanner_end;
|
||||
unsigned int scanner_start;
|
||||
@@ -712,6 +732,349 @@ void LimitAMFrequency() {
|
||||
}
|
||||
}
|
||||
|
||||
void DivdeSWMIBand() {
|
||||
if(frequency_AM >= FREQ_SW_160M_START && frequency_AM <= FREQ_SW_160M_END) {
|
||||
SWMIBandPos = SW_MI_BAND_160M;
|
||||
frequency_MIBand_160M = frequency_AM;
|
||||
SWMIBandstring = (String) "" + SWMIBandPos + " m";
|
||||
} else if(frequency_AM >= FREQ_SW_120M_START && frequency_AM <= FREQ_SW_120M_END) {
|
||||
SWMIBandPos = SW_MI_BAND_120M;
|
||||
frequency_MIBand_120M = frequency_AM;
|
||||
SWMIBandstring = (String) "" + SWMIBandPos + " m";
|
||||
} else if(frequency_AM >= FREQ_SW_90M_START && frequency_AM <= FREQ_SW_90M_END) {
|
||||
SWMIBandPos = SW_MI_BAND_90M;
|
||||
frequency_MIBand_90M = frequency_AM;
|
||||
SWMIBandstring = (String) "" + SWMIBandPos + " m";
|
||||
} else if(frequency_AM >= FREQ_SW_75M_START && frequency_AM <= FREQ_SW_75M_END) {
|
||||
SWMIBandPos = SW_MI_BAND_75M;
|
||||
frequency_MIBand_75M = frequency_AM;
|
||||
SWMIBandstring = (String) "" + SWMIBandPos + " m";
|
||||
}else if(frequency_AM >= FREQ_SW_60M_START && frequency_AM <= FREQ_SW_60M_END) {
|
||||
SWMIBandPos = SW_MI_BAND_60M;
|
||||
frequency_MIBand_60M = frequency_AM;
|
||||
SWMIBandstring = (String) "" + SWMIBandPos + " m";
|
||||
} else if(frequency_AM >= FREQ_SW_49M_START && frequency_AM <= FREQ_SW_49M_END) {
|
||||
SWMIBandPos = SW_MI_BAND_49M;
|
||||
frequency_MIBand_49M = frequency_AM;
|
||||
SWMIBandstring = (String) "" + SWMIBandPos + " m";
|
||||
} else if(frequency_AM >= FREQ_SW_41M_START && frequency_AM <= FREQ_SW_41M_END) {
|
||||
SWMIBandPos = SW_MI_BAND_41M;
|
||||
frequency_MIBand_41M = frequency_AM;
|
||||
SWMIBandstring = (String) "" + SWMIBandPos + " m";
|
||||
} else if(frequency_AM >= FREQ_SW_31M_START && frequency_AM <= FREQ_SW_31M_END) {
|
||||
SWMIBandPos = SW_MI_BAND_31M;
|
||||
frequency_MIBand_31M = frequency_AM;
|
||||
SWMIBandstring = (String) "" + SWMIBandPos + " m";
|
||||
} else if(frequency_AM >= FREQ_SW_25M_START && frequency_AM <= FREQ_SW_25M_END) {
|
||||
SWMIBandPos = SW_MI_BAND_25M;
|
||||
frequency_MIBand_25M = frequency_AM;
|
||||
SWMIBandstring = (String) "" + SWMIBandPos + " m";
|
||||
} else if(frequency_AM >= FREQ_SW_22M_START && frequency_AM <= FREQ_SW_22M_END) {
|
||||
SWMIBandPos = SW_MI_BAND_22M;
|
||||
frequency_MIBand_22M = frequency_AM;
|
||||
SWMIBandstring = (String) "" + SWMIBandPos + " m";
|
||||
} else if(frequency_AM >= FREQ_SW_19M_START && frequency_AM <= FREQ_SW_19M_END) {
|
||||
SWMIBandPos = SW_MI_BAND_19M;
|
||||
frequency_MIBand_19M = frequency_AM;
|
||||
SWMIBandstring = (String) "" + SWMIBandPos + " m";
|
||||
} else if(frequency_AM >= FREQ_SW_16M_START && frequency_AM <= FREQ_SW_16M_END) {
|
||||
SWMIBandPos = SW_MI_BAND_16M;
|
||||
frequency_MIBand_16M = frequency_AM;
|
||||
SWMIBandstring = (String) "" + SWMIBandPos + " m";
|
||||
} else if(frequency_AM >= FREQ_SW_15M_START && frequency_AM <= FREQ_SW_15M_END) {
|
||||
SWMIBandPos = SW_MI_BAND_15M;
|
||||
frequency_MIBand_15M = frequency_AM;
|
||||
SWMIBandstring = (String) "" + SWMIBandPos + " m";
|
||||
} else if(frequency_AM >= FREQ_SW_13M_START && frequency_AM <= FREQ_SW_13M_END) {
|
||||
SWMIBandPos = SW_MI_BAND_13M;
|
||||
frequency_MIBand_13M = frequency_AM;
|
||||
SWMIBandstring = (String) "" + SWMIBandPos + " m";
|
||||
} else if(frequency_AM >= FREQ_SW_11M_START && frequency_AM <= FREQ_SW_11M_END) {
|
||||
SWMIBandPos = SW_MI_BAND_11M;
|
||||
frequency_MIBand_11M = frequency_AM;
|
||||
SWMIBandstring = (String) "" + SWMIBandPos + " m";
|
||||
} else {
|
||||
if (SWMIBandPos > SW_MI_BAND_GAP) {
|
||||
SWMIBandPosold = SWMIBandPos;
|
||||
SWMIBandstringold = (String) "" + SWMIBandPosold + " m";
|
||||
}
|
||||
SWMIBandPos = SW_MI_BAND_GAP;
|
||||
}
|
||||
}
|
||||
|
||||
void ToggleSWMIBand(bool plus) {
|
||||
switch(SWMIBandPosold) {
|
||||
case SW_MI_BAND_GAP:
|
||||
if(plus) {
|
||||
SWMIBandPos = SW_MI_BAND_160M;
|
||||
SWMIBandPosold = SWMIBandPos;
|
||||
frequency_AM = FREQ_SW_160M_START;
|
||||
}else {
|
||||
SWMIBandPos = SW_MI_BAND_11M;
|
||||
SWMIBandPosold = SWMIBandPos;
|
||||
frequency_AM = FREQ_SW_11M_END;
|
||||
}
|
||||
radio.SetFreqAM(frequency_AM);
|
||||
frequency_SW = frequency_AM;
|
||||
break;
|
||||
case SW_MI_BAND_11M:
|
||||
if(plus) {
|
||||
SWMIBandstringold = (String) "" + SWMIBandPosold + " m";
|
||||
SWMIBandPos = SW_MI_BAND_160M;
|
||||
SWMIBandPosold = SWMIBandPos;
|
||||
SWMIBandstring = (String) "" + SWMIBandPos + " m";
|
||||
frequency_AM = frequency_MIBand_160M == 0 ? FREQ_SW_160M_START : frequency_MIBand_160M;
|
||||
}else {
|
||||
SWMIBandstringold = (String) "" + SWMIBandPosold + " m";
|
||||
SWMIBandPos = SW_MI_BAND_13M;
|
||||
SWMIBandPosold = SWMIBandPos;
|
||||
SWMIBandstring = (String) "" + SWMIBandPos + " m";
|
||||
frequency_AM = frequency_MIBand_13M == 0 ? FREQ_SW_13M_END : frequency_MIBand_13M;
|
||||
}
|
||||
radio.SetFreqAM(frequency_AM);
|
||||
frequency_SW = frequency_AM;
|
||||
break;
|
||||
case SW_MI_BAND_13M:
|
||||
if(plus) {
|
||||
SWMIBandstringold = (String) "" + SWMIBandPosold + " m";
|
||||
SWMIBandPos = SW_MI_BAND_11M;
|
||||
SWMIBandPosold = SWMIBandPos;
|
||||
SWMIBandstring = (String) "" + SWMIBandPos + " m";
|
||||
frequency_AM = frequency_MIBand_11M == 0 ? FREQ_SW_11M_START : frequency_MIBand_11M;
|
||||
}else {
|
||||
SWMIBandstringold = (String) "" + SWMIBandPosold + " m";
|
||||
SWMIBandPos = SW_MI_BAND_15M;
|
||||
SWMIBandPosold = SWMIBandPos;
|
||||
SWMIBandstring = (String) "" + SWMIBandPos + " m";
|
||||
frequency_AM = frequency_MIBand_15M == 0 ? FREQ_SW_15M_END : frequency_MIBand_15M;
|
||||
}
|
||||
radio.SetFreqAM(frequency_AM);
|
||||
frequency_SW = frequency_AM;
|
||||
break;
|
||||
case SW_MI_BAND_15M:
|
||||
if(plus) {
|
||||
SWMIBandstringold = (String) "" + SWMIBandPosold + " m";
|
||||
SWMIBandPos = SW_MI_BAND_13M;
|
||||
SWMIBandPosold = SWMIBandPos;
|
||||
SWMIBandstring = (String) "" + SWMIBandPos + " m";
|
||||
frequency_AM = frequency_MIBand_13M == 0 ? FREQ_SW_13M_START : frequency_MIBand_13M;
|
||||
}else {
|
||||
SWMIBandstringold = (String) "" + SWMIBandPosold + " m";
|
||||
SWMIBandPos = SW_MI_BAND_16M;
|
||||
SWMIBandPosold = SWMIBandPos;
|
||||
SWMIBandstring = (String) "" + SWMIBandPos + " m";
|
||||
frequency_AM = frequency_MIBand_16M == 0 ? FREQ_SW_16M_END : frequency_MIBand_16M;
|
||||
}
|
||||
radio.SetFreqAM(frequency_AM);
|
||||
frequency_SW = frequency_AM;
|
||||
break;
|
||||
case SW_MI_BAND_16M:
|
||||
if(plus) {
|
||||
SWMIBandstringold = (String) "" + SWMIBandPosold + " m";
|
||||
SWMIBandPos = SW_MI_BAND_15M;
|
||||
SWMIBandPosold = SWMIBandPos;
|
||||
SWMIBandstring = (String) "" + SWMIBandPos + " m";
|
||||
frequency_AM = frequency_MIBand_15M == 0 ? FREQ_SW_15M_START : frequency_MIBand_15M;
|
||||
}else {
|
||||
SWMIBandstringold = (String) "" + SWMIBandPosold + " m";
|
||||
SWMIBandPos = SW_MI_BAND_19M;
|
||||
SWMIBandPosold = SWMIBandPos;
|
||||
SWMIBandstring = (String) "" + SWMIBandPos + " m";
|
||||
frequency_AM = frequency_MIBand_19M == 0 ? FREQ_SW_19M_END : frequency_MIBand_19M;
|
||||
}
|
||||
radio.SetFreqAM(frequency_AM);
|
||||
frequency_SW = frequency_AM;
|
||||
break;
|
||||
case SW_MI_BAND_19M:
|
||||
if(plus) {
|
||||
SWMIBandstringold = (String) "" + SWMIBandPosold + " m";
|
||||
SWMIBandPos = SW_MI_BAND_16M;
|
||||
SWMIBandPosold = SWMIBandPos;
|
||||
SWMIBandstring = (String) "" + SWMIBandPos + " m";
|
||||
frequency_AM = frequency_MIBand_16M == 0 ? FREQ_SW_16M_START : frequency_MIBand_16M;
|
||||
}else {
|
||||
SWMIBandstringold = (String) "" + SWMIBandPosold + " m";
|
||||
SWMIBandPos = SW_MI_BAND_22M;
|
||||
SWMIBandPosold = SWMIBandPos;
|
||||
SWMIBandstring = (String) "" + SWMIBandPos + " m";
|
||||
frequency_AM = frequency_MIBand_22M == 0 ? FREQ_SW_22M_END : frequency_MIBand_22M;
|
||||
}
|
||||
radio.SetFreqAM(frequency_AM);
|
||||
frequency_SW = frequency_AM;
|
||||
break;
|
||||
case SW_MI_BAND_22M:
|
||||
if(plus) {
|
||||
SWMIBandstringold = (String) "" + SWMIBandPosold + " m";
|
||||
SWMIBandPos = SW_MI_BAND_19M;
|
||||
SWMIBandPosold = SWMIBandPos;
|
||||
SWMIBandstring = (String) "" + SWMIBandPos + " m";
|
||||
frequency_AM = frequency_MIBand_19M == 0 ? FREQ_SW_19M_START : frequency_MIBand_19M;
|
||||
}else {
|
||||
SWMIBandstringold = (String) "" + SWMIBandPosold + " m";
|
||||
SWMIBandPos = SW_MI_BAND_25M;
|
||||
SWMIBandPosold = SWMIBandPos;
|
||||
SWMIBandstring = (String) "" + SWMIBandPos + " m";
|
||||
frequency_AM = frequency_MIBand_25M == 0 ? FREQ_SW_25M_END : frequency_MIBand_25M;
|
||||
}
|
||||
radio.SetFreqAM(frequency_AM);
|
||||
frequency_SW = frequency_AM;
|
||||
break;
|
||||
case SW_MI_BAND_25M:
|
||||
if(plus) {
|
||||
SWMIBandstringold = (String) "" + SWMIBandPosold + " m";
|
||||
SWMIBandPos = SW_MI_BAND_22M;
|
||||
SWMIBandPosold = SWMIBandPos;
|
||||
SWMIBandstring = (String) "" + SWMIBandPos + " m";
|
||||
frequency_AM = frequency_MIBand_22M == 0 ? FREQ_SW_22M_START : frequency_MIBand_22M;
|
||||
}else {
|
||||
SWMIBandstringold = (String) "" + SWMIBandPosold + " m";
|
||||
SWMIBandPos = SW_MI_BAND_31M;
|
||||
SWMIBandPosold = SWMIBandPos;
|
||||
SWMIBandstring = (String) "" + SWMIBandPos + " m";
|
||||
frequency_AM = frequency_MIBand_31M == 0 ? FREQ_SW_31M_END : frequency_MIBand_31M;
|
||||
}
|
||||
radio.SetFreqAM(frequency_AM);
|
||||
frequency_SW = frequency_AM;
|
||||
break;
|
||||
case SW_MI_BAND_31M:
|
||||
if(plus) {
|
||||
SWMIBandstringold = (String) "" + SWMIBandPosold + " m";
|
||||
SWMIBandPos = SW_MI_BAND_25M;
|
||||
SWMIBandPosold = SWMIBandPos;
|
||||
SWMIBandstring = (String) "" + SWMIBandPos + " m";
|
||||
frequency_AM = frequency_MIBand_25M == 0 ? FREQ_SW_25M_START : frequency_MIBand_25M;
|
||||
}else {
|
||||
SWMIBandstringold = (String) "" + SWMIBandPosold + " m";
|
||||
SWMIBandPos = SW_MI_BAND_41M;
|
||||
SWMIBandPosold = SWMIBandPos;
|
||||
SWMIBandstring = (String) "" + SWMIBandPos + " m";
|
||||
frequency_AM = frequency_MIBand_41M == 0 ? FREQ_SW_41M_END : frequency_MIBand_41M;
|
||||
}
|
||||
radio.SetFreqAM(frequency_AM);
|
||||
frequency_SW = frequency_AM;
|
||||
break;
|
||||
case SW_MI_BAND_41M:
|
||||
if(plus) {
|
||||
SWMIBandstringold = (String) "" + SWMIBandPosold + " m";
|
||||
SWMIBandPos = SW_MI_BAND_31M;
|
||||
SWMIBandPosold = SWMIBandPos;
|
||||
SWMIBandstring = (String) "" + SWMIBandPos + " m";
|
||||
frequency_AM = frequency_MIBand_31M == 0 ? FREQ_SW_31M_START : frequency_MIBand_31M;
|
||||
}else {
|
||||
SWMIBandstringold = (String) "" + SWMIBandPosold + " m";
|
||||
SWMIBandPos = SW_MI_BAND_49M;
|
||||
SWMIBandPosold = SWMIBandPos;
|
||||
SWMIBandstring = (String) "" + SWMIBandPos + " m";
|
||||
frequency_AM = frequency_MIBand_49M == 0 ? FREQ_SW_49M_END : frequency_MIBand_49M;
|
||||
}
|
||||
radio.SetFreqAM(frequency_AM);
|
||||
frequency_SW = frequency_AM;
|
||||
break;
|
||||
case SW_MI_BAND_49M:
|
||||
if(plus) {
|
||||
SWMIBandstringold = (String) "" + SWMIBandPosold + " m";
|
||||
SWMIBandPos = SW_MI_BAND_41M;
|
||||
SWMIBandPosold = SWMIBandPos;
|
||||
SWMIBandstring = (String) "" + SWMIBandPos + " m";
|
||||
frequency_AM = frequency_MIBand_41M == 0 ? FREQ_SW_41M_START : frequency_MIBand_41M;
|
||||
}else {
|
||||
SWMIBandstringold = (String) "" + SWMIBandPosold + " m";
|
||||
SWMIBandPos = SW_MI_BAND_60M;
|
||||
SWMIBandPosold = SWMIBandPos;
|
||||
SWMIBandstring = (String) "" + SWMIBandPos + " m";
|
||||
frequency_AM = frequency_MIBand_60M == 0 ? FREQ_SW_60M_END : frequency_MIBand_60M;
|
||||
}
|
||||
radio.SetFreqAM(frequency_AM);
|
||||
frequency_SW = frequency_AM;
|
||||
break;
|
||||
case SW_MI_BAND_60M:
|
||||
if(plus) {
|
||||
SWMIBandstringold = (String) "" + SWMIBandPosold + " m";
|
||||
SWMIBandPos = SW_MI_BAND_49M;
|
||||
SWMIBandPosold = SWMIBandPos;
|
||||
SWMIBandstring = (String) "" + SWMIBandPos + " m";
|
||||
frequency_AM = frequency_MIBand_49M == 0 ? FREQ_SW_49M_START : frequency_MIBand_49M;
|
||||
}else {
|
||||
SWMIBandstringold = (String) "" + SWMIBandPosold + " m";
|
||||
SWMIBandPos = SW_MI_BAND_75M;
|
||||
SWMIBandPosold = SWMIBandPos;
|
||||
SWMIBandstring = (String) "" + SWMIBandPos + " m";
|
||||
frequency_AM = frequency_MIBand_75M == 0 ? FREQ_SW_75M_END : frequency_MIBand_75M;
|
||||
}
|
||||
radio.SetFreqAM(frequency_AM);
|
||||
frequency_SW = frequency_AM;
|
||||
break;
|
||||
case SW_MI_BAND_75M:
|
||||
if(plus) {
|
||||
SWMIBandstringold = (String) "" + SWMIBandPosold + " m";
|
||||
SWMIBandPos = SW_MI_BAND_60M;
|
||||
SWMIBandPosold = SWMIBandPos;
|
||||
SWMIBandstring = (String) "" + SWMIBandPos + " m";
|
||||
frequency_AM = frequency_MIBand_60M == 0 ? FREQ_SW_60M_START : frequency_MIBand_60M;
|
||||
}else {
|
||||
SWMIBandstringold = (String) "" + SWMIBandPosold + " m";
|
||||
SWMIBandPos = SW_MI_BAND_90M;
|
||||
SWMIBandPosold = SWMIBandPos;
|
||||
SWMIBandstring = (String) "" + SWMIBandPos + " m";
|
||||
frequency_AM = frequency_MIBand_90M == 0 ? FREQ_SW_90M_END : frequency_MIBand_90M;
|
||||
}
|
||||
radio.SetFreqAM(frequency_AM);
|
||||
frequency_SW = frequency_AM;
|
||||
break;
|
||||
case SW_MI_BAND_90M:
|
||||
if(plus) {
|
||||
SWMIBandstringold = (String) "" + SWMIBandPosold + " m";
|
||||
SWMIBandPos = SW_MI_BAND_75M;
|
||||
SWMIBandPosold = SWMIBandPos;
|
||||
SWMIBandstring = (String) "" + SWMIBandPos + " m";
|
||||
frequency_AM = frequency_MIBand_75M == 0 ? FREQ_SW_75M_START : frequency_MIBand_75M;
|
||||
}else {
|
||||
SWMIBandstringold = (String) "" + SWMIBandPosold + " m";
|
||||
SWMIBandPos = SW_MI_BAND_120M;
|
||||
SWMIBandPosold = SWMIBandPos;
|
||||
SWMIBandstring = (String) "" + SWMIBandPos + " m";
|
||||
frequency_AM = frequency_MIBand_120M == 0 ? FREQ_SW_120M_END : frequency_MIBand_120M;
|
||||
}
|
||||
radio.SetFreqAM(frequency_AM);
|
||||
frequency_SW = frequency_AM;
|
||||
break;
|
||||
case SW_MI_BAND_120M:
|
||||
if(plus) {
|
||||
SWMIBandstringold = (String) "" + SWMIBandPosold + " m";
|
||||
SWMIBandPos = SW_MI_BAND_90M;
|
||||
SWMIBandPosold = SWMIBandPos;
|
||||
SWMIBandstring = (String) "" + SWMIBandPos + " m";
|
||||
frequency_AM = frequency_MIBand_90M == 0 ? FREQ_SW_90M_START : frequency_MIBand_90M;
|
||||
}else {
|
||||
SWMIBandstringold = (String) "" + SWMIBandPosold + " m";
|
||||
SWMIBandPos = SW_MI_BAND_160M;
|
||||
SWMIBandPosold = SWMIBandPos;
|
||||
SWMIBandstring = (String) "" + SWMIBandPos + " m";
|
||||
frequency_AM = frequency_MIBand_160M == 0 ? FREQ_SW_160M_END : frequency_MIBand_160M;
|
||||
}
|
||||
radio.SetFreqAM(frequency_AM);
|
||||
frequency_SW = frequency_AM;
|
||||
break;
|
||||
case SW_MI_BAND_160M:
|
||||
if(plus) {
|
||||
SWMIBandstringold = (String) "" + SWMIBandPosold + " m";
|
||||
SWMIBandPos = SW_MI_BAND_120M;
|
||||
SWMIBandPosold = SWMIBandPos;
|
||||
SWMIBandstring = (String) "" + SWMIBandPos + " m";
|
||||
frequency_AM = frequency_MIBand_120M == 0 ? FREQ_SW_120M_START : frequency_MIBand_120M;
|
||||
}else {
|
||||
SWMIBandstringold = (String) "" + SWMIBandPosold + " m";
|
||||
SWMIBandPos = SW_MI_BAND_11M;
|
||||
SWMIBandPosold = SWMIBandPos;
|
||||
SWMIBandstring = (String) "" + SWMIBandPos + " m";
|
||||
frequency_AM = frequency_MIBand_11M == 0 ? FREQ_SW_49M_END : frequency_MIBand_11M;
|
||||
}
|
||||
radio.SetFreqAM(frequency_AM);
|
||||
frequency_SW = frequency_AM;
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
void SelectBand() {
|
||||
if (band != BAND_FM) {
|
||||
seek = false;
|
||||
@@ -740,6 +1103,7 @@ void SelectBand() {
|
||||
LowLevelInit == false;
|
||||
BWreset = true;
|
||||
BWset = 0;
|
||||
if (tunemode == TUNE_MI_BAND) tunemode = TUNE_MAN;
|
||||
radio.power(0);
|
||||
delay(50);
|
||||
radio.SetFreq(frequency);
|
||||
@@ -1204,6 +1568,15 @@ void KeyUp() {
|
||||
EEPROM.writeByte(51, memorypos);
|
||||
EEPROM.commit();
|
||||
break;
|
||||
case TUNE_MI_BAND:
|
||||
if (showSWMIBand) {
|
||||
if (displayflip) {
|
||||
ToggleSWMIBand(false);
|
||||
}else {
|
||||
ToggleSWMIBand(true);
|
||||
}
|
||||
}
|
||||
break;
|
||||
}
|
||||
if (XDRGTKUSB == true || XDRGTKTCP == true) if (band == BAND_FM) DataPrint("T" + String(frequency * 10)); else DataPrint("T" + String(frequency_AM));
|
||||
radio.clearRDS(fullsearchrds);
|
||||
@@ -1460,6 +1833,15 @@ void KeyDown() {
|
||||
EEPROM.writeByte(51, memorypos);
|
||||
EEPROM.commit();
|
||||
break;
|
||||
case TUNE_MI_BAND:
|
||||
if (showSWMIBand) {
|
||||
if (displayflip) {
|
||||
ToggleSWMIBand(true);
|
||||
}else {
|
||||
ToggleSWMIBand(false);
|
||||
}
|
||||
}
|
||||
break;
|
||||
}
|
||||
if (XDRGTKUSB == true || XDRGTKTCP == true) if (band == BAND_FM) DataPrint("T" + String(frequency * 10)); else DataPrint("T" + String(frequency_AM));
|
||||
radio.clearRDS(fullsearchrds);
|
||||
@@ -2324,6 +2706,12 @@ void ShowFreq(int mode) {
|
||||
tft.drawRightString(String(freq), 248, 45, 7);
|
||||
freqold = freq;
|
||||
freqoldcount = count.length();
|
||||
|
||||
if(band == BAND_SW && showSWMIBand) {
|
||||
DivdeSWMIBand();
|
||||
updateSWMIBand();
|
||||
}
|
||||
|
||||
} else {
|
||||
unsigned int freq = frequency + ConverterSet * 100;
|
||||
String count = String(freq / 100, DEC);
|
||||
@@ -2770,6 +3158,38 @@ void updateEQ() {
|
||||
tft.drawCentreString("EQ", 302, 54, GFXFF);
|
||||
}
|
||||
|
||||
void updateSWMIBand() {
|
||||
switch(SWMIBandPos) {
|
||||
case SW_MI_BAND_11M:
|
||||
case SW_MI_BAND_13M:
|
||||
case SW_MI_BAND_15M:
|
||||
case SW_MI_BAND_16M:
|
||||
case SW_MI_BAND_19M:
|
||||
case SW_MI_BAND_22M:
|
||||
case SW_MI_BAND_25M:
|
||||
case SW_MI_BAND_31M:
|
||||
case SW_MI_BAND_41M:
|
||||
case SW_MI_BAND_49M:
|
||||
case SW_MI_BAND_60M:
|
||||
case SW_MI_BAND_75M:
|
||||
case SW_MI_BAND_90M:
|
||||
case SW_MI_BAND_120M:
|
||||
case SW_MI_BAND_160M:
|
||||
tft.setTextColor(TFT_BLACK);
|
||||
tft.drawString(SWMIBandstringold, 50, 45, GFXFF);
|
||||
|
||||
tft.setTextColor(TFT_SKYBLUE, TFT_BLACK);
|
||||
tft.drawString(SWMIBandstring, 50, 45, GFXFF);
|
||||
break;
|
||||
case SW_MI_BAND_GAP:
|
||||
|
||||
tft.setTextColor(TFT_BLACK);
|
||||
tft.drawString(SWMIBandstringold, 50, 45, GFXFF);
|
||||
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
void doBW() {
|
||||
if (band == BAND_FM) {
|
||||
if (BWset > 16) BWset = 0;
|
||||
@@ -2874,11 +3294,13 @@ void doTuneMode() {
|
||||
RoundStep();
|
||||
ShowStepSize();
|
||||
}
|
||||
}else if(band == BAND_SW && showSWMIBand) {
|
||||
tunemode = TUNE_MI_BAND;
|
||||
} else {
|
||||
tunemode = TUNE_MEM;
|
||||
}
|
||||
break;
|
||||
|
||||
case TUNE_MI_BAND:
|
||||
case TUNE_AUTO:
|
||||
tunemode = TUNE_MEM;
|
||||
break;
|
||||
@@ -2897,10 +3319,16 @@ void ShowTuneMode() {
|
||||
tft.setFreeFont(FONT7);
|
||||
switch (tunemode) {
|
||||
case TUNE_MAN:
|
||||
tft.drawRoundRect(3, 57, 40, 20, 5, TFT_GREYOUT);
|
||||
tft.setTextColor(TFT_GREYOUT);
|
||||
tft.drawCentreString("AUTO", 22, 55, GFXFF);
|
||||
|
||||
if(band == BAND_SW) {
|
||||
tft.drawRoundRect(3, 57, 40, 20, 5, TFT_GREYOUT);
|
||||
tft.setTextColor(TFT_GREYOUT);
|
||||
tft.drawCentreString("BAND", 22, 55, GFXFF);
|
||||
} else {
|
||||
tft.drawRoundRect(3, 57, 40, 20, 5, TFT_GREYOUT);
|
||||
tft.setTextColor(TFT_GREYOUT);
|
||||
tft.drawCentreString("AUTO", 22, 55, GFXFF);
|
||||
}
|
||||
|
||||
tft.drawRoundRect(3, 35, 40, 20, 5, TFT_WHITE);
|
||||
tft.setTextColor(TFT_WHITE);
|
||||
tft.drawCentreString("MAN", 22, 33, GFXFF);
|
||||
@@ -2925,9 +3353,15 @@ void ShowTuneMode() {
|
||||
break;
|
||||
|
||||
case TUNE_MEM:
|
||||
tft.drawRoundRect(3, 57, 40, 20, 5, TFT_GREYOUT);
|
||||
tft.setTextColor(TFT_GREYOUT);
|
||||
tft.drawCentreString("AUTO", 22, 55, GFXFF);
|
||||
if(band == BAND_SW) {
|
||||
tft.drawRoundRect(3, 57, 40, 20, 5, TFT_GREYOUT);
|
||||
tft.setTextColor(TFT_GREYOUT);
|
||||
tft.drawCentreString("BAND", 22, 55, GFXFF);
|
||||
} else {
|
||||
tft.drawRoundRect(3, 57, 40, 20, 5, TFT_GREYOUT);
|
||||
tft.setTextColor(TFT_GREYOUT);
|
||||
tft.drawCentreString("AUTO", 22, 55, GFXFF);
|
||||
}
|
||||
|
||||
tft.drawRoundRect(3, 35, 40, 20, 5, TFT_GREYOUT);
|
||||
tft.setTextColor(TFT_GREYOUT);
|
||||
@@ -2942,6 +3376,19 @@ void ShowTuneMode() {
|
||||
}
|
||||
tft.drawCentreString("MEM", 22, 77, GFXFF);
|
||||
break;
|
||||
case TUNE_MI_BAND:
|
||||
tft.drawRoundRect(3, 57, 40, 20, 5, TFT_WHITE);
|
||||
tft.setTextColor(TFT_WHITE);
|
||||
tft.drawCentreString("BAND", 22, 55, GFXFF);
|
||||
|
||||
tft.drawRoundRect(3, 35, 40, 20, 5, TFT_GREYOUT);
|
||||
tft.setTextColor(TFT_GREYOUT);
|
||||
tft.drawCentreString("MAN", 22, 33, GFXFF);
|
||||
|
||||
tft.drawRoundRect(3, 79, 40, 20, 5, TFT_GREYOUT);
|
||||
tft.setTextColor(TFT_GREYOUT);
|
||||
tft.drawCentreString("MEM", 22, 77, GFXFF);
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -12,11 +12,11 @@ enum RDS_GROUPS {
|
||||
};
|
||||
|
||||
enum RADIO_BAND {
|
||||
BAND_FM, BAND_LW, BAND_MW, BAND_SW
|
||||
BAND_FM, BAND_LW, BAND_MW, BAND_SW
|
||||
};
|
||||
|
||||
enum RADIO_TUNE_MODE {
|
||||
TUNE_MAN, TUNE_AUTO, TUNE_MEM
|
||||
TUNE_MAN, TUNE_AUTO, TUNE_MEM, TUNE_MI_BAND
|
||||
};
|
||||
|
||||
#define FREQ_MW_STEP_9K 9
|
||||
@@ -70,6 +70,23 @@ enum RADIO_TUNE_MODE {
|
||||
#define FREQ_SW_11M_START 25670
|
||||
#define FREQ_SW_11M_END 26100
|
||||
|
||||
#define SW_MI_BAND_GAP 0
|
||||
#define SW_MI_BAND_11M 11
|
||||
#define SW_MI_BAND_13M 13
|
||||
#define SW_MI_BAND_15M 15
|
||||
#define SW_MI_BAND_16M 16
|
||||
#define SW_MI_BAND_19M 19
|
||||
#define SW_MI_BAND_22M 22
|
||||
#define SW_MI_BAND_25M 25
|
||||
#define SW_MI_BAND_31M 31
|
||||
#define SW_MI_BAND_41M 41
|
||||
#define SW_MI_BAND_49M 49
|
||||
#define SW_MI_BAND_60M 60
|
||||
#define SW_MI_BAND_75M 75
|
||||
#define SW_MI_BAND_90M 90
|
||||
#define SW_MI_BAND_120M 120
|
||||
#define SW_MI_BAND_160M 160
|
||||
|
||||
const char* const PTY_EU[] {
|
||||
"None",
|
||||
"News",
|
||||
|
||||
Reference in New Issue
Block a user