mirror of
https://github.com/rvtr/TwlIPL.git
synced 2025-10-31 06:01:12 -04:00
ボリュームを基準値にそろえる機能の追加
git-svn-id: file:///Users/lillianskinner/Downloads/platinum/twl/TwlIPL/trunk@1564 b08762b0-b915-fc4b-9d8c-17b2551a87ff
This commit is contained in:
parent
ec0623ea6e
commit
fca6e73346
@ -98,6 +98,7 @@ static void VBlankIntr(void);
|
||||
static void InitializeFatfs(void);
|
||||
static void InitializeNwm(OSHeapHandle drvHeapHandle, OSHeapHandle wpaHeapHandle);
|
||||
static void InitializeCdc(void);
|
||||
static void AdjustVolume(void);
|
||||
/*---------------------------------------------------------------------------*
|
||||
外部シンボル参照
|
||||
*---------------------------------------------------------------------------*/
|
||||
@ -202,6 +203,9 @@ TwlSpMain(void)
|
||||
#endif // ifdef SDK_SEA
|
||||
#endif
|
||||
MCU_InitIrq(THREAD_PRIO_MCU); // MCU 初期化
|
||||
|
||||
// ボリューム設定の調整
|
||||
AdjustVolume();
|
||||
}
|
||||
|
||||
if (OSi_IsCodecTwlMode() == TRUE)
|
||||
@ -831,6 +835,58 @@ static void ReadUserInfo(void)
|
||||
#endif
|
||||
}
|
||||
|
||||
/*---------------------------------------------------------------------------*
|
||||
Name: AdjustVolume
|
||||
|
||||
Description: 32段階のボリュームを8段階に量子化する
|
||||
|
||||
Arguments: None.
|
||||
|
||||
Returns: None.
|
||||
*---------------------------------------------------------------------------*/
|
||||
void AdjustVolume(void)
|
||||
{
|
||||
u8 volume = MCU_GetVolume();
|
||||
u8 adjust;
|
||||
if ( volume < 2 )
|
||||
{
|
||||
adjust = 0;
|
||||
}
|
||||
else if ( volume < 5 )
|
||||
{
|
||||
adjust = 2;
|
||||
}
|
||||
else if ( volume < 9 )
|
||||
{
|
||||
adjust = 6;
|
||||
}
|
||||
else if ( volume < 14 )
|
||||
{
|
||||
adjust = 11;
|
||||
}
|
||||
else if ( volume < 19 )
|
||||
{
|
||||
adjust = 16;
|
||||
}
|
||||
else if ( volume < 24 )
|
||||
{
|
||||
adjust = 21;
|
||||
}
|
||||
else if ( volume < 29 )
|
||||
{
|
||||
adjust = 26;
|
||||
}
|
||||
else
|
||||
{
|
||||
adjust = 31;
|
||||
}
|
||||
OS_TPrintf("Current volume: %d.\n", volume);
|
||||
if ( volume != adjust )
|
||||
{
|
||||
OS_TPrintf("Volume adjusts to %d.\n", adjust);
|
||||
MCU_SetVolume(adjust);
|
||||
}
|
||||
}
|
||||
|
||||
/*---------------------------------------------------------------------------*
|
||||
Name: VBlankIntr
|
||||
|
||||
Loading…
Reference in New Issue
Block a user