打印

请教STM32 U盘 设备管理器显示的名字的修改方法

[复制链接]
5464|7
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
wormchen|  楼主 | 2012-11-20 09:05 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式
本帖最后由 wormchen 于 2012-11-20 09:06 编辑

我现在用STM32 + FLASH 实现U盘功能,用的官方的例子。文件操作已经没有问题。但枚举成功后再设备管理器显示"STM SD FLASH USB Disk Device",我先改成我自己产品的名字,可是usb_desc.c文件里根本都找不到对应的字符串,不知道设备管理器里显示的名字是从哪来的。



const uint8_t MASS_StringLangID[MASS_SIZ_STRING_LANGID] =
   {
     MASS_SIZ_STRING_LANGID,
     0x03,
     0x09,
     0x04
   }
   ;      /* LangID = 0x0409: U.S. English */
const uint8_t MASS_StringVendor[MASS_SIZ_STRING_VENDOR] =
   {
     MASS_SIZ_STRING_VENDOR, /* Size of manufacturer string */
     0x03,           /* bDescriptorType = String descriptor */
     /* Manufacturer: "STMicroelectronics" */
     'S', 0, 'T', 0, 'M', 0, 'i', 0, 'c', 0, 'r', 0, 'o', 0, 'e', 0,
     'l', 0, 'e', 0, 'c', 0, 't', 0, 'r', 0, 'o', 0, 'n', 0, 'i', 0,
     'c', 0, 's', 0
//    'Z', 0, 'h', 0, 'i', 0, 'X', 0, 'i', 0, 'n', 0, 'g', 0
   };
const uint8_t MASS_StringProduct[MASS_SIZ_STRING_PRODUCT] =
   {
     MASS_SIZ_STRING_PRODUCT,
     0x03,
     /* Product name: "STM32F10x:USB Mass Storage" */
     'S', 0, 'T', 0, 'M', 0, '3', 0, '2', 0, ' ', 0, 'M', 0, 'a', 0, 's', 0,
     's', 0, ' ', 0, 'S', 0, 't', 0, 'o', 0, 'r', 0, 'a', 0, 'g', 0, 'e', 0
//     'Z', 0, 'B', 0, 'S', 0, '-', 0, 'I', 0, 'I', 0, ' ', 0, 'D', 0, 'u', 0,
//     'm', 0, 'p', 0, 'e', 0, 'r', 0


   };

uint8_t MASS_StringSerial[MASS_SIZ_STRING_SERIAL] =
   {
     MASS_SIZ_STRING_SERIAL,
     0x03,
     /* Serial number*/
#ifdef STM32L1XX_MD
     'S', 0, 'T', 0, 'M', 0, '3', 0, '2', 0, 'L', 0, '1', 0
#else
     'S', 0, 'T', 0, 'M', 0, '3', 0, '2', 0, '1', 0, '0', 0      
#endif /* STM32L1XX_MD */
//     'Z', 0, 'B', 0, 'S', 0, '-', 0, 'I', 0, 'I', 0, ' ', 0, 'D', 0, 'u', 0,
//     'm', 0, 'p', 0, 'e', 0, 'r', 0   
    };
const uint8_t MASS_StringInterface[MASS_SIZ_STRING_INTERFACE] =
   {
     MASS_SIZ_STRING_INTERFACE,
     0x03,
     /* Interface 0: "ST Mass" */
     'S', 0, 'T', 0, ' ', 0, 'M', 0, 'a', 0, 's', 0, 's', 0
//     'Z', 0, 'B', 0, 'S', 0, '-', 0, 'I', 0, 'I', 0, ' ', 0,
//     'M', 0, 'a', 0, 's', 0, 's', 0  

   };

我直接修改
usb_desc.c文件里的字符串描述符里的内容,但是还是不管用。
沙发
IJK| | 2012-11-20 16:41 | 只看该作者
我想,你找错文件了,应该找 mass storage相关的文件。

使用特权

评论回复
板凳
insignal| | 2012-11-20 17:01 | 只看该作者
这个是inquiry data
找到inquiry data的字符串 改掉就OK了

使用特权

评论回复
地板
1471225546| | 2014-2-12 10:34 | 只看该作者
支持2楼

使用特权

评论回复
5
我是前行的狮子| | 2015-4-23 21:21 | 只看该作者
大家能说的具体些吗,我也在找那个名字的修改地点

使用特权

评论回复
6
mintspring| | 2015-4-23 23:25 | 只看该作者
这个是inquiry data
找到inquiry data的字符串 改掉就OK了

使用特权

评论回复
7
周董| | 2015-4-24 07:13 | 只看该作者
看到楼上的方法,我也试试看,

使用特权

评论回复
8
su_tech| | 2016-6-13 19:41 | 只看该作者
SCSI文件中

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

18

主题

61

帖子

0

粉丝