动态 USB 描述符

Adafruit CircuitPython相关
MicroPython重要分支
回复
头像
shaoziyang
帖子: 2911
注册时间: 2019年 10月 21日 13:48

动态 USB 描述符

#1

帖子 shaoziyang »

来自;乔科拉德黑客键盘的项目日志

最近,CircuitPython中出现了一个新特性,它允许我们做一个巧妙的应用:我们可以显示或不显示CIRCUITPY磁盘和Python REPL控制台键盘通电或复位时是否按下了某个键。

为什么这很重要?因为当我的键盘显示为一个磁盘和串行设备时,我发现它相当令人分心,特别是当我使用其他CircuitPython设备时——有时很难分辨哪个是哪个。另一方面,以前禁用磁盘和控制台的方法涉及编译和刷新一个特殊的python固件,因为这个功能是一个编译选项。每次你想做一些小的改变或调整时,必须重新刷新固件,这不是很方便。

使用新功能,只需要修改 boot.py 文件

代码: 全选

import board
import digitalio
import storage
import usb_cdc
import usb_hid

row = digitalio.DigitalInOut(board.D4)
col = digitalio.DigitalInOut(board.A2)
col.switch_to_output(value=0)
row.switch_to_input(pull=digitalio.Pull.UP)

if row.value:
    storage.disable_usb_drive()
    usb_cdc.disable()

usb_hid.enable(devices=(usb_hid.KEYBOARD,))

row.deinit()
col.deinit()
这个例子中使用了板上的D4和A2检测按键,其余的就不用多说了。
 

回复

  • 随机主题
    回复总数
    阅读次数
    最新文章