diff --git a/Global/Global.c b/Global/Global.c index 262820a..6d409f9 100644 --- a/Global/Global.c +++ b/Global/Global.c @@ -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,17}; /* major.minor.patch — 0.2.17: Type-C charge battery icon; BLE timbre/style UI sync via UI task; RTT midi/string inject */ +const uint8_t Version[3] = {0,2,18}; /* major.minor.patch — 0.2.18: free-mode even-beat release stop; keep KEY_ID during wind-down (no octave jump); universal outro all-green LED; expert local song continues after section+fret */ uint8_t Led = 8; bool PressFlag = 0; @@ -851,7 +851,6 @@ void FreeMode_PollEvenBeatStop(void) if (tick_done || beat_done) { FreeMode_CancelEvenBeatStop(); - KEY_ID_1629 = 0; Stop_AutoBand(); LOG_I("pick", "free even-stop done beat=%d tick=%u beatDone=%u", beat, (unsigned)tick_done, (unsigned)beat_done); @@ -870,6 +869,7 @@ void Stop_AutoBand() SendMidiDataToDreamDSP(AllControlOff_buff,sizeof(AllControlOff_buff)); } StartFlag = 0; + KEY_ID_1629 = 0; /* 停奏后再清,避免收束段音区映射突变 */ s_outro_led_all_green = 0; //tick_ever_positive = false; for(uint8_t i = 0;i < 4;i++) key_toggle[i] = 0; @@ -1012,10 +1012,13 @@ void TM1629_Handle(uint8_t key) PressFlag = 0; if(mGuiData[GUI_TAB_INDEX].Current == 2) { - /* 普通:松手对齐到偶拍末再停(拍1→拍2末,拍3→拍4末) */ - KEY_ID_1629 = 0; + /* 普通:松手对齐偶拍末再停。 + * 收束前勿清 KEY_ID:App_Auto 音区指纹依赖指板键,清零会关掉 III+ 的 -12, + * 表现为停前音高突然升高。 */ if (StartFlag) FreeMode_ArmEvenBeatStop(); + else + KEY_ID_1629 = 0; } else if(mGuiData[GUI_TAB_INDEX].Current == 0) { diff --git a/tools/publish_k1_release.py b/tools/publish_k1_release.py index 5dd9677..e141920 100644 --- a/tools/publish_k1_release.py +++ b/tools/publish_k1_release.py @@ -38,7 +38,7 @@ TONE_HDR = PROJ / "project" / "inc" / "ExtFlash_Tone_Addr.h" IAP_DIR = REPO / "升级" / "MCU主控升级" OUT_ROOT = REPO / "tools" / "out" -FW_VER = "0.2.17" +FW_VER = "0.2.18" UI0902_RES_BASE = 0x00100000 BOOT_FLASH_ADDR = 0x08000000 APP_FLASH_ADDR = 0x08008000