AC690X 修改USB-AUDIO的设备名称

本文详细介绍了如何使用AC690X的mango_dev_usb_slave.h库函数修改USB-AUDIO设备名称,包括在dev_pc.c中添加头文件、定义设备名称字符串及在初始化函数中调用user_set_descriptor函数。修改后需删除设备管理器中的旧设备以确保系统识别新名称。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

AC690X 修改USB-AUDIO的设备名称

0.相关说明

使用mango_dev_usb_slave.h中已封装的函数,u32 user_set_descriptor(USB_DES index, void * pstring, u32 len);。对应增加USB_DES中的产品字符串。
特别注意:修改烧录后,重新上机时,需要把设备管理器中的USB Composite Device设备删除。刷新设备。否则,系统只会认到旧的已存在系统中的设备名称而不去更新新的设备名称。

mango_dev_usb_slave.h

typedef enum
{
 	DEVICE_DESCRIPTOR_STR = 0x0,//设备描述符STR
 	CONFIG_DESCRIPTOR_STR,		//配置描述符STR
 	MSD_CONFIG_DESCRIPTOR ,		//MSD配置/描述符
 	AUDIO_CONFIG_DESCRIPTOR,	//音频配置描述符
    SPEAKER_CONFIG_DESCRIPTOR,	//扬声器配置描述符
    MIC_CONFIG_DESCRIPTOR,		//麦克风配置描述符
 	HID_CONFIG_DESCRIPTOR,		//HID配置描述符
 	HID_REPORT_DESCRIPTOR,		//HID报告描述符
 	LANGUAGE_STRING,			//语言字符串
 	IMANUFACTURE_STRING,		//描述厂商字符串的索引Index of Vendor
 	IPRODUCT_STRING,			//描述产品字符串的索引Index of Producr
    ISERIAL_NUMBER_STRING,		//描述设备序列号字符串的索引0x03;//Index of SN
 	AUDIO_VOL,					//AUDIO_VOL
 	MIC_VOL,					//
    MAX_STRING = 14,
}USB_DES;

u32 user_set_descriptor(USB_DES index, void * pstring, u32 len);

1.dev_pc.c中,添加头文件

dev_pc.c

#include "usb/mango_dev_usb_slave.h"

2.dev_pc.c中增加设备名称的const 数组[ ]

dev_pc.c

const u8 IPRODUCT_STR1[] =
{    0x16, 0x03,    
     'E',0,'T',0,'f',0,'r',0, 'o', 0, 'm', 0, 
     'M',0,'A',0,'R',0,'s',0, 
};

3.dev_pc.c中,app_usb_slave_init()函数中,增加

dev_pc.c

s32 app_usb_slave_init(void)
{    
	...
	...
	...
	...
	user_set_descriptor(IPRODUCT_STRING, (u8 *)IPRODUCT_STR1, IPRODUCT_STR1[0]);
};
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值