UAC使用参考
1. 概述¶
UAC是一种基于USB总线实现的数字音频数据传输协议,不同的开发者可以根据自身需求,定义任意的控制方式、传输方式、音频格式等等参数。
UAC应用Demo路径:rtk/proj/sc/application/usb_gadget_app/class/src/uac_app.c
UAC驱动路径:rtk/proj/sc/customer/usb_gadget/class/src/uac.c
以及rtk/proj/sc/customer/usb_gadget/class/src/uac2.c
2. 配置¶
2.1. mak配置¶
在相应的product config中修改mak文件的配置,要保证CONFIG_USB_GADGET_SUPPORT = TRUE
以及CONFIG_USB_GADGET_SSTAR_SUPPORT = TRUE
基础USB编译打开。
启用选项CONFIG_USB_GADGET_UAC_SUPPORT = TRUE
。用户根据需要选择启用UAC-MIC(麦克风)和UAC-SPK(扬声器),使用UAC-MIC需要使用选项CONFIG_USB_GADGET_UAC_MIC_SUPPORT = TRUE
,使用UAC-SPK需要使用选项CONFIG_USB_GADGET_UAC_SPK_SUPPORT = TRUE
。
根据UAC协议的不同,如果使用UAC 2.0,需要选项指定CONFIG_USB_GADGET_UAC_VERSION = 2
,这样才能将驱动的uac2.c
编译进去,选择1仅编译uac.c
。
如果需要一启动便初始化UAC,需要配置CONFIG_USB_GADGET_APP_CUR_CLASS = "2"
。
注意mak修改完成后需要make clean
下再make
。
2.2. 调试¶
-
本例板端同时启用UAC-MIC以及UAC-SPK,PC打开设备管理器,能够看到新增的2个UAC设备:
-
测试UAC-MIC,确保板端接好麦克风后,打开如下界面,对着麦克风说话能够看到变化:
-
测试UAC-SPK,仅需在PC选择播放设备为UAC,播放音乐即可(板端需要接好喇叭):