fix(free): keep all fret LEDs green during normal-mode playback

Disable LOOP_LIGHT rhythm chasing in free mode so LEDs stay solid green instead of moving with the beat.

Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
yuquanjun 2026-09-21 17:18:30 +08:00
parent feb084699c
commit a80c2216ea
2 changed files with 7 additions and 3 deletions

View File

@ -1222,6 +1222,8 @@ void Pick_Handle()
break;
}
StartFlag = 1;
/* 普通:播放中指板 LED 全绿,关闭走向灯刷新 */
app_tm1629_all_on(LED_COLOR_G);
if (mGuiData[GUI_AUTOBAND_SW].Current)
{
AutoBandTop1_Stop();
@ -1733,10 +1735,11 @@ void Read_Cur_Measure()
static uint32_t last_tick_i = 0;
uint8_t tab = (uint8_t)mGuiData[GUI_TAB_INDEX].Current;
uint8_t last = (uint8_t)mGuiData[GUI_TAB_LAST_INDEX].Current;
/* 普通(2)与万能(0)均按「和弦走向」同步亮灯;设置页(3)沿用进入前模式 */
/* 仅万能(0)按和弦走向同步亮灯;普通(2)播放时保持全绿,不跟节奏换灯/换位。
* 设置页(3)仅当从万能进入时继续走向灯。 */
uint8_t loop_light_ok =
(tab == 0 || tab == 2) ||
(tab == 3 && (last == 0 || last == 2));
(tab == 0) ||
(tab == 3 && last == 0);
Band_TrackPlayTick();
FreeMode_PollEvenBeatStop();

View File

@ -7,6 +7,7 @@ void UI_FreeMode_Init(void)
mGuiData[GUI_TAB_LAST_INDEX].Current = mGuiData[GUI_TAB_INDEX].Current;
//mGuiData[GUI_AUTOBAND_SW].Current = 1;
UI_ReloadTonePreset(); /* TAB=普通 后再加载 1.bin */
app_tm1629_all_on(LED_COLOR_G); /* 普通模式:全绿,不跟节奏走向灯 */
if (CurrUIProcress == UI_SongMode_Process)
Show_home_UI_Diff();
else