feat: add irq_status_t structure and update get_irq_status to use it
feat: implement string conversion functions for CommandStatus and ChipMode enums
This commit is contained in:
@ -225,6 +225,27 @@ enum class CommandStatus : uint8_t {
|
||||
COMMAND_TX_DONE = 0x06, // 0b110
|
||||
};
|
||||
|
||||
inline const char *to_str(const CommandStatus &status) {
|
||||
switch (status) {
|
||||
case CommandStatus::RESERVED:
|
||||
return "RESERVED";
|
||||
case CommandStatus::RFU:
|
||||
return "RFU";
|
||||
case CommandStatus::DATA_AVAILABLE:
|
||||
return "DATA_AVAILABLE";
|
||||
case CommandStatus::COMMAND_TIMEOUT:
|
||||
return "COMMAND_TIMEOUT";
|
||||
case CommandStatus::COMMAND_PROCESSING_ERROR:
|
||||
return "COMMAND_PROCESSING_ERROR";
|
||||
case CommandStatus::FAILURE_TO_EXECUTE_COMMAND:
|
||||
return "FAILURE_TO_EXECUTE_COMMAND";
|
||||
case CommandStatus::COMMAND_TX_DONE:
|
||||
return "COMMAND_TX_DONE";
|
||||
default:
|
||||
return "Unknown";
|
||||
}
|
||||
}
|
||||
|
||||
enum class ChipMode : uint8_t {
|
||||
UNUSED = 0x00, // 0b000
|
||||
RFU = 0x01, // 0b001
|
||||
@ -235,6 +256,27 @@ enum class ChipMode : uint8_t {
|
||||
TX = 0x06, // 0b110
|
||||
};
|
||||
|
||||
inline const char *to_str(const ChipMode &mode) {
|
||||
switch (mode) {
|
||||
case ChipMode::UNUSED:
|
||||
return "UNUSED";
|
||||
case ChipMode::RFU:
|
||||
return "RFU";
|
||||
case ChipMode::STBY_RC:
|
||||
return "STBY_RC";
|
||||
case ChipMode::STBY_XOSC:
|
||||
return "STBY_XOSC";
|
||||
case ChipMode::FS:
|
||||
return "FS";
|
||||
case ChipMode::RX:
|
||||
return "RX";
|
||||
case ChipMode::TX:
|
||||
return "TX";
|
||||
default:
|
||||
return "Unknown";
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
struct __attribute__((packed)) status_t {
|
||||
uint8_t reserved_1 : 1;
|
||||
|
||||
Reference in New Issue
Block a user