我正在使用基于 Atmega32u4 的arduino leonardo mini克隆构建USB隐藏设备。该特定IC已内置USB控制器,并将其转换为HID设备很简单,只需要包含Keyboard.h
然后使用Keyboard.print
......
问题是,当arduino连接到PC时,我在哪里可以设置/定义所显示设备的名称,因为目前它被命名为Arduino Leonardo。
tty 的默认自动名称为 usbmodemHIDP1
在系统偏好设置中,我可以看到:
ID product: 0x8036
ID vendor: 0x2341
Wersion: 1.00
Serial number: HIDPC
Speed: do 12 Mb/sek.
Vendor: Arduino LLC
ID location: 0x14200000 / 16
那么在arduino Keyboard.h中我可以更改该名称或ID吗? 可能吗 ? 因为在我看来应该是,但我找不到合适的地方,而且我没有Arduino AVR的经验,因为我以前使用Microchip的Mplab X进行不同的IC;)。
任何帮助表示赞赏 最好的问候
答案 0 :(得分:1)
董事会在枚举时发送的“iProduct”字符串告诉操作系统给出了人类可读的名称。该字符串的值设置在hardware / arduino / cores / arduino /中的USBCore.cpp顶部附近。这是一个Unicode字符串,所以我们需要寻找'L','e','o','n'[...]而不是“Leonardo”。使用的字符串取决于在board.txt中给出的设备的PID号(也在枚举期间发送)。
为了分发基于Leonardo的自定义硬件,需要提供自己的VID。
也可以使用替代固件。 Arduino的32U4引导程序Caterina可以在硬件/ arduino / bootloaders / caterina下找到。它需要LUFA才能构建。
希望能帮助别人解决同样的问题:)干杯,主题已关闭