Adding directly settable commands (instead of volume up/down, set volume to xx)

This commit is contained in:
2026-01-30 17:20:57 -06:00
parent 87ece7eb14
commit 936f71b737
6 changed files with 264 additions and 115 deletions

View File

@@ -47,7 +47,8 @@ public:
bool Initialize();
typedef enum {
subMain, //
sysCommand, // even with power off
subMain, // after power is on
subRadio,
subAudio,
subZone1,
@@ -87,6 +88,10 @@ public:
fncDC1OnOff,
fncDC2OnOff,
fncReady,
fncReportEnable,
fncReportDelay,
fncRequest,
fncSetValue,
fncFunctionCount
} AVRFunction_E;
@@ -196,6 +201,41 @@ public:
eDualMain, //
eDualSub,
eDualAll,
e0ms,
e50ms,
e100ms,
e150ms,
e200ms,
e250ms,
e300ms,
e350ms,
e400ms,
eTuningFreq,
eMainVolDB,
eZone2VolDB,
eInputName,
eZone2InputName,
eZoneXVolDB,
eZoneXInputName,
eMasterVol,
eZone2Vol,
eMainLRBal,
eMainLevel,
eZone3Vol,
eMainLevelR,
eMainLevelL,
eCenterLevel,
eRearR,
eRearL,
eFrontR,
eFrontL,
eSurBackR,
eSurBackL,
eSwfr1,
eSwfr2,
eARGCount
} AVRArg_T;
@@ -208,10 +248,12 @@ public:
/// @param[in] subsystem: Main | Zone 1 | Zone 2 | Zone 3
/// @param[in] function : Power, Speaker, Volume, etc.
/// @param[in] arg: on/off, etc.
/// @param[in] variableData is for those functions where it needs to integrate variable value, such as setting the volume directly
/// @return
bool AVRCommand(AVRSubsystem_T subsystem,
AVRFunction_E function,
AVRArg_T arg);
AVRArg_T arg,
uint8_t variableData = 0);
/// @brief AVRMessageType_T