Jammer ramp mode

Jammer range splitting, hopping. Only 1MHz wide splits for now.
This commit is contained in:
furrtek
2015-11-14 03:44:49 +01:00
parent 66de53744e
commit bcbad4629f
7 changed files with 148 additions and 37 deletions
+11
View File
@@ -43,6 +43,7 @@ public:
FSKPacket = 7,
TestResults = 8,
TXDone = 9,
Retune = 10,
MAX
};
@@ -262,6 +263,16 @@ public:
int n = 0;
};
class RetuneMessage : public Message {
public:
RetuneMessage(
) : Message { ID::Retune }
{
}
int64_t freq = 0;
};
class MessageHandlerMap {
public:
using MessageHandler = std::function<void(const Message* const p)>;
@@ -30,6 +30,13 @@ struct TouchADCFrame {
uint32_t dr[8];
};
struct JammerRange {
bool active;
int64_t center;
int64_t width;
uint32_t duration;
};
/* NOTE: These structures must be located in the same location in both M4 and M0 binaries */
struct SharedMemory {
MessageQueue baseband_queue;
@@ -50,6 +57,8 @@ struct SharedMemory {
uint8_t afsk_repeat;
uint32_t afsk_fmmod;
bool afsk_transmit_done;
JammerRange jammer_ranges[16];
};
extern SharedMemory& shared_memory;