mirror of
https://github.com/portapack-mayhem/mayhem-firmware.git
synced 2025-08-20 08:57:46 +00:00
Added options for enabling CLKOUT.
- CLKOUT can be enabled in Radio settings and status bar. - Fixed a typo(I believe) in ui_navigation.
This commit is contained in:
@@ -63,6 +63,10 @@ using modem_repeat_range_t = range_t<int32_t>;
|
||||
constexpr modem_repeat_range_t modem_repeat_range { 1, 99 };
|
||||
constexpr int32_t modem_repeat_reset_value { 5 };
|
||||
|
||||
using clkout_config_range_t = range_t<uint32_t>;
|
||||
constexpr clkout_config_range_t clkout_config_range { 0, 1 };
|
||||
constexpr uint32_t clkout_config_reset_value { 0 };
|
||||
|
||||
/* struct must pack the same way on M4 and M0 cores. */
|
||||
struct data_t {
|
||||
int64_t tuned_frequency;
|
||||
@@ -91,6 +95,8 @@ struct data_t {
|
||||
uint32_t pocsag_ignore_address;
|
||||
|
||||
int32_t tone_mix;
|
||||
|
||||
uint32_t clkout_config; // TODO: Add custom frequency output?
|
||||
};
|
||||
|
||||
static_assert(sizeof(data_t) <= backup_ram.size(), "Persistent memory structure too large for VBAT-maintained region");
|
||||
@@ -287,5 +293,14 @@ void set_pocsag_ignore_address(uint32_t address) {
|
||||
data->pocsag_ignore_address = address;
|
||||
}
|
||||
|
||||
bool clkout_enabled() {
|
||||
clkout_config_range.reset_if_outside(data->clkout_config, clkout_config_reset_value);
|
||||
return (bool)(data->clkout_config & 1);
|
||||
}
|
||||
|
||||
void set_clkout_enabled(bool enable) {
|
||||
data->clkout_config = (uint32_t)enable;
|
||||
}
|
||||
|
||||
} /* namespace persistent_memory */
|
||||
} /* namespace portapack */
|
||||
|
Reference in New Issue
Block a user