树莓派pico入坑笔记,快捷键键盘制作

使用usb_hid功能制作快捷键小键盘,定义了6个键,分别是

ctrl+z ctrl+v ctrl+c

ctrl+a ctrl+w ctrl+n

对应引脚

board.GP4, board.GP8, board.GP13

board.GP28, board.GP20, board.GP17

需要用到的库,记得复制进单片机存储里面

然后是main主程序代码

python 复制代码
import board
from digitalio import DigitalInOut,Direction,Pull
import time
import usb_hid
from adafruit_hid.keyboard import Keyboard
from adafruit_hid.keyboard_layout_us import KeyboardLayoutUS
from adafruit_hid.keycode import Keycode

time.sleep(1)  # Sleep for a bit to avoid a race condition on some systems
keyboard = Keyboard(usb_hid.devices)
keyboard_layout = KeyboardLayoutUS(keyboard)  # We're in the US :)

Led=DigitalInOut(board.LED)
Led.direction=Direction.OUTPUT
Led.value=False 
#引脚列表
kb=[board.GP4,board.GP8,board.GP13,board.GP28,board.GP20,board.GP17]
#存储配置后的引脚
KeyPin=[]
#功能键列表
key=[Keycode.Z,Keycode.V,Keycode.C,Keycode.A,Keycode.W,Keycode.N]
control_key = Keycode.CONTROL
#配置引脚
for i in kb:
    k=DigitalInOut(i)
    k.direction.INPUT
    k.pull=Pull.UP
    KeyPin.append(k)
#工作部分
while True :
    for i in KeyPin:
        if not i.value:
            Led.value=True
            while not i.value:
                pass
            keyboard.press(control_key, key[KeyPin.index(i)])
            keyboard.release_all()
            Led.value=False
            time.sleep(0.01)

        

boot启动程序代码,作用是防止被识别为usb存储设备

python 复制代码
# disabled usb diivide
import storage 
storage.disable_usb_drive()

更多hid设备参考以下教程

Adafruit HID 库

CircuitPython HID 键盘和鼠标

相关推荐
聪明的笨猪猪7 分钟前
Java Redis “运维”面试清单(含超通俗生活案例与深度理解)
java·经验分享·笔记·面试
~无忧花开~3 小时前
JavaScript学习笔记(二十八):JavaScript性能优化全攻略
开发语言·前端·javascript·笔记·学习·性能优化·js
一只小风华~5 小时前
学习笔记:Vue Router 中的链接匹配机制与样式控制
前端·javascript·vue.js·笔记·学习·ecmascript
泽虞6 小时前
《Qt应用开发》笔记p2
linux·开发语言·数据库·c++·笔记·qt
月临水6 小时前
Redis 学习笔记(二)
redis·笔记·学习
摇滚侠6 小时前
Spring Boot 3零基础教程,条件注解,笔记09
java·spring boot·笔记
想你依然心痛7 小时前
Spark大数据分析与实战笔记(第六章 Kafka分布式发布订阅消息系统-01)
笔记·分布式·spark
qq_12498707537 小时前
基于Spring Boot的网上招聘服务系统(源码+论文+部署+安装)
java·spring boot·后端·spring·计算机外设
哈基鑫8 小时前
手写数字识别学习笔记
笔记·学习
润 下9 小时前
C语言——深入解析C语言指针:从基础到实践从入门到精通(三)
c语言·开发语言·经验分享·笔记·学习·程序人生·其他