Release 0.2.1: persist mixer volume across power cycles.
Sync faders on shutdown and re-apply LoadConfig after DSP boot so saved mixer levels and master pot stay consistent after power-off. Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
parent
794345d3ba
commit
49af730f91
|
|
@ -101,7 +101,7 @@ int16_t MIC_VOL_MAP[11]= {-9000,-7000,-5000,-3000,-1000,1000,3000,5000,7000,9000
|
|||
|
||||
uint8_t TOUCH_AREA_NUM = (sizeof(Touch_Areas)/sizeof(Touch_AreaTypeDef));
|
||||
|
||||
const uint8_t Version[3] = {0,2,0}; /* major.minor.patch — 0.2.0: tone pack 0903 addr remap */
|
||||
const uint8_t Version[3] = {0,2,1}; /* major.minor.patch — 0.2.1: keep mixer/master vol across power cycle */
|
||||
|
||||
uint8_t Led = 8;
|
||||
bool PressFlag = 0;
|
||||
|
|
@ -212,6 +212,14 @@ static void PowerOff(void)
|
|||
powon = false; /* 更新关机标志 */
|
||||
StopFullTask();
|
||||
|
||||
/* 关机前把当前调音台推子写入 NVM 镜像,保证再次开机保持音量 */
|
||||
{
|
||||
NvmParam_Type *nvm = drv_nvm_param_ptr();
|
||||
nvm->param.BandVol = faders[0].val;
|
||||
nvm->param.StringVol = faders[1].val;
|
||||
nvm->param.MIcVol = faders[2].val;
|
||||
nvm->param.MicRev = faders[3].val;
|
||||
}
|
||||
nvm_ret = drv_nvm_save_to_flash();
|
||||
LOG_I("PWR", "nvm_save=%u", (unsigned)nvm_ret);
|
||||
|
||||
|
|
|
|||
|
|
@ -147,8 +147,8 @@ void Touch_Mode_Select_Action(int8_t FLAG, uint8_t ID, uint8_t areaIndex)
|
|||
InModeFlag = true;
|
||||
/* 进入子页后抑制残留按下,否则易误触底栏 GUI_TAB_INDEX(id=5)→设置 */
|
||||
app_touch_suppress(500);
|
||||
/* 开机后再次确认弦音色(DSP 已就绪) */
|
||||
SendProgramChangeMidiEvent(0,Timbre_index[mGuiData[GUI_TIMBRE_SELECT].Current]);
|
||||
/* DSP 已就绪:再下发音色 + 调音台音量(与关机前 NVM/faders 一致) */
|
||||
LoadConfig();
|
||||
|
||||
switch (ID)
|
||||
{
|
||||
|
|
@ -190,11 +190,12 @@ void IdleProcess(DisplayTaskMessage_Type msg)
|
|||
TM1629D_UpdateDisplay(0);
|
||||
StartTouchTask();
|
||||
StartScanTask();
|
||||
/* Dream 上电稍后可能忽略首包 SysEx:再发一次与旋钮对齐 */
|
||||
/* Dream 上电稍后可能忽略首包 SysEx:再发主音量 + 调音台(保持关机前设置) */
|
||||
rt_thread_mdelay(400);
|
||||
vol = ADC_ReadChannel(ADC_CHANNEL_1)>>5;
|
||||
app_adc_sync_volume(vol);
|
||||
Send_volume(vol);
|
||||
LoadConfig();
|
||||
Draw_Volume_Bar(UI0902_VOL_X, UI0902_VOL_Y, level, 1, WHITE, GRAY);
|
||||
break;
|
||||
|
||||
|
|
|
|||
|
|
@ -25,7 +25,7 @@ MAP_TXT = REPO / "Doc" / "音色文件" / "0903" / "FLASH_MAP.txt"
|
|||
IAP_DIR = REPO / "升级" / "MCU主控升级"
|
||||
OUT_ROOT = REPO / "tools" / "out"
|
||||
|
||||
FW_VER = "0.2.0"
|
||||
FW_VER = "0.2.1"
|
||||
TONE_RES_VER = "0903"
|
||||
UI0902_RES_BASE = 0x00100000
|
||||
|
||||
|
|
|
|||
Loading…
Reference in New Issue