AC692X系列芯片一般用来做音箱类产品。支持的功能:BT,MUSIC,AUX,FM,REC,RTC,ECHO。
下面说一下常用模式的基本配置。
BT
蓝牙的后台模式,固件过大可以关闭。
#define BT_BACKGROUND_EN 0
蓝牙ble数传功能,固件过大可以关闭。
define BLE_BREDR_MODE (BT_BREDR_EN)//|BT_BLE_EN)//资源问题,开了ble,不能开启一拖二
蓝牙名支持sdk_tool.exe工具修改
__set_simple_pair_flag(0); /*提供接口外部设置配对方式,1使能简易配对。0使用pin code, 会使用配置文件的值*/
MUSIC
外设根据产品原理图实际使用脚位配置,支持SD卡,U盘,PC声卡
#define SDMMC0_EN 0
#define SDMMC1_EN 0
#define USB_DISK_EN 0
#define USB_PC_EN 0
播放/暂停mute脚控制,可以根据需要修改mute脚状态
mute脚连接功放的SD脚,控制功放输出。不影响耳机输出。
case MSG_MUSIC_PP:
music_task_printf("MSG_MUSIC_PP\n");
music_status = music_player_pp(obj);
if (music_status == MUSIC_DECODER_ST_PLAY) {
pa_umute();
music_task_printf("fun = %s, line = %d\n", __func__, __LINE__);
} else if (music_status == MUSIC_PLAYRR_ST_PAUSE) {
pa_mute();
music_task_printf("fun = %s, line = %d\n", __func__, __LINE__);
} else {
pa_mute();
music_task_printf("fun = %s, line = %d\n", __func__, __LINE__);
}
//UI_menu_mux(MENU_MUSIC_MAIN, MENU_LIST_DISPLAY);
break;
AUX
line模式开启,以及设备插入检测。
#define AUX_AD_ENABLE 1
//aux检测使能
#define AUX_DETECT_EN 1
LINE_L & LINE_R引脚选择
#define BT_CHANNEL DAC_DIGITAL_CH
#define MUSIC_CHANNEL DAC_DIGITAL_CH
#define RTC_CHANNEL DAC_DIGITAL_CH
#define FM_INSI_CHANNEL DAC_DIGITAL_CH
#define FM_IIC_CHANNEL DAC_AMUX1
#define LINEIN_CHANNEL DAC_AMUX1
#define UDISK_CHANNEL DAC_DIGITAL_CH
if (LINEIN_CHANNEL == DAC_AMUX0) {
JL_PORTB->DIR |= BIT(4) | BIT(5);
} else if (LINEIN_CHANNEL == DAC_AMUX1) {
JL_PORTA->DIR |= BIT(3) | BIT(4);
} else if (LINEIN_CHANNEL == DAC_AMUX2) {
JL_PORTB->DIR |= BIT(6) | BIT(3);
}
linein_channel_open(LINEIN_CHANNEL, 0);
ladc_ch_open(LADC_LINLR_CHANNEL, tws_linein_parm->rate);
FM
蓝牙后台模式与内置FM冲突
//<芯片内部FM
#if BT_BACKGROUND_EN
//蓝牙RF和收音RF共用,使用后台不能用内部收音
#define FM_INSIDE 0
#else
#define FM_INSIDE 1
#endif