JL7018F&JL7006F_7003F AUX IIS
📎 原始文档:https://www.kdocs.cn/l/coZJXDYAaE0B JL7018F&JL7006F_7003F AUX IIS
方案demo说明
此方案对应功能为:
- JL7018F头戴式耳机,混合馈ANC,需要在AUX模式下也能有ANC效果
- 此方案外挂一个JL700N的芯片,AUX由JL700N采集然后通过IIS传给JL7018F进行播放
- JL7018F在一个独立的AUX模式中运行IIS的输入和播放
- JL7018F按键3击进入AUX模式,在AUX模式单击回到蓝牙模式 建议对比公版将功能移植到新的SDK开发
demo代码链接
700N代码:AC700N_earphone_release_V1.3.7_linein_iis.zip
701N代码:ac701n_earphone_release_v1.5.2_beta_linein_iis.zip
701N公版代码:ac701n_earphone_release_v1.5.2_beta.zip
更新记录
2024年12月9日:
- 7018:linein增加EQ、兼容96K采样率
2024年7月17日:
- 7006:优化省晶振时部分板子时钟偏差大导致的卡顿 2024年1月15日:
- 701N端主机添加音频采样率同步,处理从机不是700N时,701N播歌卡顿问题或者低概率pop声问题 2023年11月27日:
- 7006:修复linein 双边、单边没声音问题 2023年8月14日:
- 添加linein iis mute功能
- linein iis音量支持单独调节
- 修复linein iis 模式下anc切换后死机问题
- 修复退出蓝牙再回到蓝牙播歌没声音问题 2023年8月2日:
- 7018:修复播anc提示音之后卡死复位问题
- 7018:添加音量调节
- 7006:优化701端播提示音后linein卡顿问题
- 7006:优化701端播提示音会导致700N关机的问题
使用说明
JL7018F
- 修改IIS配置 文件:cpu\br28\audio_dec\audio_dec_iis.c
ALINK_PARM alink_param = {
#if 0//(IIS_ROLE == ROLE_S)
.mclk_io = IO_PORTB_01,
.sclk_io = IO_PORTB_01,
#else
.mclk_io = IO_PORTC_04,
.sclk_io = IO_PORTC_04,//sclk io配置改这里
#endif
#if 1//(IIS_ROLE == ROLE_M)
.lrclk_io = IO_PORTC_03,//lrclk io配置改这里
#else
.lrclk_io = IO_PORTB_02,
#endif
.ch_cfg[0].data_io = IO_PORTC_02, //数据通信口,跟下面的IO一样
.ch_cfg[1].data_io = IO_PORTC_02, //数据通信口,跟上面的IO一样
.mode = ALINK_MD_IIS,
#if 1//(IIS_ROLE == ROLE_M)
.role = ALINK_ROLE_MASTER, //7018F做主机
#else
.role = ALINK_ROLE_SLAVE,
#endif
.clk_mode = ALINK_CLK_FALL_UPDATE_RAISE_SAMPLE,
.bitwide = ALINK_LEN_16BIT,
.sclk_per_frame = ALINK_FRAME_32SCLK,
.dma_len = 1024 * 4,
.sample_rate = 44100,
.buf_mode = ALINK_BUF_CIRCLE,
};
- 设置唤醒7006F的IO 文件:cpu\br28\audio_dec\audio_dec_iis.c
#define IIS_SLAVE_PWON_PORT IO_PORTA_06
JL7006F
- 修改IIS配置 文件:cpu\br36\audio\linein_iis.c
ALINK_PARM alink_param = {
#if (IIS_ROLE == ROLE_S)
.mclk_io = IO_PORTC_03,
.sclk_io = IO_PORTC_03, //sclk io配置改这里
#else
.mclk_io = IO_PORTC_04,
.sclk_io = IO_PORTC_04,
#endif
#if (IIS_ROLE == ROLE_M)
.lrclk_io = IO_PORTC_03,
#else
.lrclk_io = IO_PORTC_04, //lrclk io配置改这里
#endif
.ch_cfg[0].data_io = IO_PORTC_02, //数据通信口,跟下面的IO一样
.ch_cfg[1].data_io = IO_PORTC_02, //数据通信口,跟上面的IO一样
.mode = ALINK_MD_IIS,
#if (IIS_ROLE == ROLE_M)
.role = ALINK_ROLE_MASTER,
#else
.role = ALINK_ROLE_SLAVE,//7006F做从机
#endif
.clk_mode = ALINK_CLK_FALL_UPDATE_RAISE_SAMPLE,
.bitwide = ALINK_LEN_16BIT,
.sclk_per_frame = ALINK_FRAME_32SCLK,
.dma_len = 1024 * 4,
.sample_rate = 44100,
.buf_mode = ALINK_BUF_CIRCLE,
};
- 修改自动关机时间

- 设置唤醒IO 文件:apps\earphone\board\br36\board_ac700n_iis_linein_cfg.h
#define IIS_SLAVE_AWAKEN_PORT IO_PORTB_01 //iis从机唤醒的io口