MTK feature phone 音频功放开启关闭驱动示例
2013-05-29 16:54
501 查看
1.MTK6250平台 K类功放、AB类功放、正常音频开启和关闭启动代码如下,供参考:
void AFE_SwitchExtAmplifier( char sw_on )
{
#if defined(__AUDIO_CLASS_K__)//K类功放
volatile unsigned short iDelay;
if (sw_on)
{
GPIO_WriteIO( 0, gpio_afe_amplifier_pin);
for (iDelay =0; iDelay <20; iDelay++){}
//30//pulse time define by device 脉冲时间间隔由硬件决定
GPIO_WriteIO( 1, gpio_afe_amplifier_pin);
for (iDelay =0; iDelay <20; iDelay++){} //30
GPIO_WriteIO( 0, gpio_afe_amplifier_pin);
for (iDelay =0; iDelay <20; iDelay++){} //30
GPIO_WriteIO( 1, gpio_afe_amplifier_pin);
for (iDelay =0; iDelay <20; iDelay++){} //30
GPIO_WriteIO( 0, gpio_afe_amplifier_pin);
for (iDelay =0; iDelay <20; iDelay++){} //30
GPIO_WriteIO( 1, gpio_afe_amplifier_pin);
for (iDelay =0; iDelay <20; iDelay++){} //30
GPIO_WriteIO( 0, gpio_afe_amplifier_pin);
for (iDelay =0; iDelay <20; iDelay++){} //30
GPIO_WriteIO( 1, gpio_afe_amplifier_pin);
}
else
{
GPIO_WriteIO( 0, gpio_afe_amplifier_pin);
}
#elif defined(__AUDIO_CLASS_AB__)//AB类功放
if (sw_on)
{
GPIO_WriteIO( 1, gpio_afe_amplifier_pin);
}
else
{
GPIO_WriteIO( 0, gpio_afe_amplifier_pin);
}
#else //__AUDIO_CLASS_K__
#if defined(MT6253T) || defined(MT6253)
//For MT6253T
if( sw_on )
pmu6253_spk_enable(KAL_TRUE);
else
pmu6253_spk_enable(KAL_FALSE);
#elif defined(MT6253E) || defined(MT6253L)
if( sw_on )
pmu_6253el_spk_enable(KAL_TRUE);
else
pmu_6253el_spk_enable(KAL_FALSE);
#elif defined(MT6252H) || defined(MT6252)
DCL_HANDLE handle;
PMU_CTRL_SPK_SET_EN val;
handle=DclPMU_Open(DCL_PMU, FLAGS_NONE);
if( sw_on )
//pmu_6252_spk_enable(KAL_TRUE);
val.enable=DCL_TRUE;
else
//pmu_6252_spk_enable(KAL_FALSE);
val.enable=DCL_FALSE;
DclPMU_Control(handle, SPK_SET_EN, (DCL_CTRL_DATA_T *)&val);
DclPMU_Close(handle);
#else
DCL_HANDLE handle;
PMU_CTRL_SPK_SET_EN val;
handle=DclPMU_Open(DCL_PMU, FLAGS_NONE);
if( sw_on )
{
val.enable=DCL_TRUE;
}
else
{
val.enable=DCL_FALSE;
}
DclPMU_Control(handle, SPK_SET_EN, (DCL_CTRL_DATA_T *)&val);
DclPMU_Close(handle);
#endif
#endif //__AUDIO_CLASS_K__
}
void AFE_SwitchExtAmplifier( char sw_on )
{
#if defined(__AUDIO_CLASS_K__)//K类功放
volatile unsigned short iDelay;
if (sw_on)
{
GPIO_WriteIO( 0, gpio_afe_amplifier_pin);
for (iDelay =0; iDelay <20; iDelay++){}
//30//pulse time define by device 脉冲时间间隔由硬件决定
GPIO_WriteIO( 1, gpio_afe_amplifier_pin);
for (iDelay =0; iDelay <20; iDelay++){} //30
GPIO_WriteIO( 0, gpio_afe_amplifier_pin);
for (iDelay =0; iDelay <20; iDelay++){} //30
GPIO_WriteIO( 1, gpio_afe_amplifier_pin);
for (iDelay =0; iDelay <20; iDelay++){} //30
GPIO_WriteIO( 0, gpio_afe_amplifier_pin);
for (iDelay =0; iDelay <20; iDelay++){} //30
GPIO_WriteIO( 1, gpio_afe_amplifier_pin);
for (iDelay =0; iDelay <20; iDelay++){} //30
GPIO_WriteIO( 0, gpio_afe_amplifier_pin);
for (iDelay =0; iDelay <20; iDelay++){} //30
GPIO_WriteIO( 1, gpio_afe_amplifier_pin);
}
else
{
GPIO_WriteIO( 0, gpio_afe_amplifier_pin);
}
#elif defined(__AUDIO_CLASS_AB__)//AB类功放
if (sw_on)
{
GPIO_WriteIO( 1, gpio_afe_amplifier_pin);
}
else
{
GPIO_WriteIO( 0, gpio_afe_amplifier_pin);
}
#else //__AUDIO_CLASS_K__
#if defined(MT6253T) || defined(MT6253)
//For MT6253T
if( sw_on )
pmu6253_spk_enable(KAL_TRUE);
else
pmu6253_spk_enable(KAL_FALSE);
#elif defined(MT6253E) || defined(MT6253L)
if( sw_on )
pmu_6253el_spk_enable(KAL_TRUE);
else
pmu_6253el_spk_enable(KAL_FALSE);
#elif defined(MT6252H) || defined(MT6252)
DCL_HANDLE handle;
PMU_CTRL_SPK_SET_EN val;
handle=DclPMU_Open(DCL_PMU, FLAGS_NONE);
if( sw_on )
//pmu_6252_spk_enable(KAL_TRUE);
val.enable=DCL_TRUE;
else
//pmu_6252_spk_enable(KAL_FALSE);
val.enable=DCL_FALSE;
DclPMU_Control(handle, SPK_SET_EN, (DCL_CTRL_DATA_T *)&val);
DclPMU_Close(handle);
#else
DCL_HANDLE handle;
PMU_CTRL_SPK_SET_EN val;
handle=DclPMU_Open(DCL_PMU, FLAGS_NONE);
if( sw_on )
{
val.enable=DCL_TRUE;
}
else
{
val.enable=DCL_FALSE;
}
DclPMU_Control(handle, SPK_SET_EN, (DCL_CTRL_DATA_T *)&val);
DclPMU_Close(handle);
#endif
#endif //__AUDIO_CLASS_K__
}
相关文章推荐
- MTK feature phone 音频参数配置
- MTK feature phone LCD调试方法
- MTK feature phone driver 调试汇编
- MTK feature phone GPIO设置
- mtk硬件启动关闭蓝牙功能的项目:mtk 硬件ScanCode和keycode应用示例
- MTK FeaturePhone平台关于中断的理解
- MTK feature phone driver 调试补充
- MTK SPI总线简单介绍及驱动示例
- MTK feature phone 跑马灯多变效果实现
- mtk硬件启动关闭蓝牙功能的项目:mtk 上层操作GPIO应用示例
- Oralce 归档日志开启与关闭示例
- MTK feature phone 射频参数配置
- MTK feature phone 52D FLASH配置分析
- MTK音频对应驱动设置
- MTK feature phone 待机电流过大调试
- 命令行关闭开启和删除驱动服务
- MTK SmartPhone Record-(6)+驱动文档总结
- Windows7自动安装驱动功能关闭与开启教程
- MTK feature phone LCD开机显示花屏调试
- Oralce 归档日志开启与关闭示例