3. 音量
本章节主要介绍音量控制。
3.1. 底层音量接口
AD14/15/17/18提供了数字音量设置接口,可以实现音量加1,音量减1,获取音量和设置音量到特定值操作。
音量设置接口的文件分布如下所示:
3.1.1. 函数void dac_mode_init(u16 vol, void *phy_vol_set_func)
此函数实现了音量初始化,其中参数:
1、vol:初始化设置的音量值。 2、phy_vol_set_func:设置模拟音量的函数指针,用于AD18的RDAC输出模式配置模拟音量,设置后通过传入的回调函数调节模拟音量。
3.1.2. 函数u8 dac_vol(char set,u8 vol)
此函数实现了播放音频的音量设置,其中参数:
1、set:’+’为音量加1,’-’为音量减1,’r’为获取音量,’s’为设置音量为vol的值。 2、vol:set参数为’s’时候需要设置的音量值。
3.2. 音量应用介绍
上电时候默认设置音量为固定值16:
关机时候默认设置音量为固定值16:
设置音量值的时候,会把音量写入vm,可以上电时候读取vm值来做音量记忆。音量值写入vm动作放在半秒消息做,防止写vm频率过高导致播放卡音: