常用模式介绍
692X系列的SDK支持多种模式切换,以下是一些常用的模式介绍,RTC模式和录音模式在此不讲解。
蓝牙模式
用的最多的应该是蓝牙模式,蓝牙模式主要由以下宏定义进行协议选择:
注销掉的是BLE,只选择了我们常用的EDR,即经典蓝牙,用于传输音频。
蓝牙模式主要的开发代码都在一下文件夹下:
大部分情况下我们都只是修改一下指示灯的状态,按键消息。也有需要修改代码逻辑功能的时候,比如做一些定制化的东西,这个时候一般都是在task_bt.c里面去修改。
后续如果时间允许,将会做视频进行介绍。
音乐模式
音乐模式的宏定义如下:
SD卡和U盘是共用一个music task的,所以统称为音乐模式。
SD卡又分为SD0和SD1,这个主要是看使用的芯片的SD引脚是SD0还是SD1来进行选择的。
音乐模式的相关代码如下:
常用的也主要就是用到music.c和task_music_key.c,在客户没有定制化需求的时候,是很简单的。
声卡模式
打开上图中的宏定义, 就可以打开声卡模式了,声卡模式的意思就是当电脑USB口跟设备的USB口连接时,设备可以直接播放电脑的音乐,相当于一个有线音响。
相关代码如下:
声卡模式一般只会改到按键消息,很少会需要改动task_pc.c里面的内容。
FM模式
692系列的芯片有内置FM模块, 而且692系列的FM收音效果会比690系列的好很多。
同时杰理的这套SDK上也集成了一些常用的外置FM芯片的驱动,做成宏定义的形式给用户选择:
第一个宏定义是打开SDK的FM功能,第二个是选择内置FM模块。如果把内置FM模块置0,可以选择上面的外置FM芯片,RDA5807和BK1080、QN8035,目前只集成了这三个常用的外置FM芯片,如果用户用的是别的外置FM芯片,则需要自己重写驱动了。
相关代码如下:
FM这块说简单很多简单,说难也很难。如果客户没有特别的定制化需求,基本上开个宏定义改下按键消息,就可以了。如果客户对手动存台,或者对默认的按位存台不满意,需要改动,那就有得折腾了。
Idle模式
IDLE模式是一个空任务模式,一般用作开机和关机。
最常见的是拿来播放内置音乐。
如果客户要求FLASH里面存一些音乐,然后在没有连接蓝牙和U盘的时候,也能播放内置音乐,这时候一般就会用IDLE模式来做,当然了,也可以自己新建一个任务来做,不过有现成的空任务干嘛不用呢?
相关代码如下:
AUX模式
AUX模式也称外音输入模式和Linein模式、线输入模式等,就是芯片的两个或一个引脚接收外部的音频模拟信号,然后芯片再把这个信号通过DAC输出,最终播放出来。
AUX检测
AUX检测方式有两种:
- AD按键的220K电阻用于AUX检测
当插入AUX线时,220K的阻值接地。
- GPIO用于AUX检测,当AUX线插入时,检测口接地。
如上图,当AUX_DETECT_EN和AUX_DET_MULTI_AD_KEY都设置成1时,使用方式1检测;当AUX_DETECT_EN置1、AUX_DET_MULTI_AD_KEY置0时,使用方式2检测。
如果把AUX_DETECT_EN置0,则不需要检测AUX是否介入,这时候通过按键切换模式是可以切换进AUX模式的。
AUX通道选择
这个宏定义是AUX的通道选择,这个通道需要根据自己选用的芯片来设置。
如下:
假设使用的是6925A,当使用6脚作为AUX输入引脚是,应该把AUX通道应该选择DAC_AMUX1_R_ONLY
如果使用的是13、14脚作为AUX输入脚,则设置成DAC_AMUX0
AUX通道有以下可选: