FIX #74: limit spectrum analyzer RSSI trigger values

This commit is contained in:
Krzysiek Egzmont
2023-11-02 01:46:07 +01:00
parent 034139d7d5
commit c057f8a097

View File

@@ -401,11 +401,24 @@ static void Measure() { rssiHistory[scanInfo.i] = scanInfo.rssi = GetRssi(); }
// Update things by keypress // Update things by keypress
static uint16_t dbm2rssi(int dBm)
{
return (dBm + 160)*2;
}
static void ClampRssiTriggerLevel()
{
settings.rssiTriggerLevel = clamp(settings.rssiTriggerLevel, dbm2rssi(settings.dbMin), dbm2rssi(settings.dbMax));
}
static void UpdateRssiTriggerLevel(bool inc) { static void UpdateRssiTriggerLevel(bool inc) {
if (inc) if (inc)
settings.rssiTriggerLevel += 2; settings.rssiTriggerLevel += 2;
else else
settings.rssiTriggerLevel -= 2; settings.rssiTriggerLevel -= 2;
ClampRssiTriggerLevel();
redrawScreen = true; redrawScreen = true;
redrawStatus = true; redrawStatus = true;
} }
@@ -418,6 +431,8 @@ static void UpdateDBMax(bool inc) {
} else { } else {
return; return;
} }
ClampRssiTriggerLevel();
redrawStatus = true; redrawStatus = true;
redrawScreen = true; redrawScreen = true;
SYSTEM_DelayMs(20); SYSTEM_DelayMs(20);