树莓派支持鼠标和LCD(TODO)

这个工作量比较大,估计要晚一些搞了。。。

安装树莓派 Pico 的 C/C++ SDK

git clone https://github.com/hathach/tinyusb.git

CMakeList.txt

复制代码

cmake_minimum_required(VERSION 3.13)

include(pico_sdk_import.cmake)

project(usb_host_mouse_example)

pico_sdk_init()

add_executable(usb_host_mouse_example

main.c

)

# 添加对 TinyUSB 的支持

add_subdirectory(tinyusb)

target_link_libraries(usb_host_mouse_example pico_stdlib tinyusb_host)

pico_add_extra_outputs(usb_host_mouse_example)

main.c

#include "pico/stdlib.h"

#include "bsp/board.h"

#include "tusb.h"

// USB HID 鼠标回调函数

void tuh_hid_mouse_mounted_cb(uint8_t dev_addr) {

printf("A USB mouse is mounted.\n");

}

void tuh_hid_mouse_unmounted_cb(uint8_t dev_addr) {

printf("A USB mouse is unmounted.\n");

}

void tuh_hid_mouse_isr(uint8_t dev_addr, uint8_t instance, const uint8_t* report, uint16_t len) {

// 解析鼠标报告

int8_t x = report[1];

int8_t y = report[2];

int8_t wheel = report[3];

printf("Mouse movement: x=%d, y=%d, wheel=%d\n", x, y, wheel);

}

int main() {

// 初始化板子和 USB 主机

board_init();

tusb_init();

while (true) {

// 处理 USB 事件

tuh_task();

}

return 0;

}

复制代码

mkdir build

cd build

cmake ..

make

生成的 usb_host_mouse_example.uf2 文件拖放到树莓派 Pico 的 USB 驱动器中,完成固件上传。

相关推荐
nashane13 小时前
HarmonyOS 6学习:外接键盘CapsLock键“失灵”?一招解锁大写输入
学习·华为·计算机外设·harmonyos
HezhezhiyuLe13 小时前
无界内嵌编辑器键盘事件失效
编辑器·计算机外设
酉鬼女又兒14 小时前
零基础入门计算机组成原理:控制器章节全考点汇总 | 寄存器 + 控制存储器 + 微指令
考研·职场和发展·计算机外设
沃普天科技14 小时前
USB显示器驱动板触摸收款机显示器收银机点菜机广告机
驱动开发·游戏·计算机外设·电脑·ar·音视频·硬件工程
卢锡荣1 天前
单芯通吃,盲插标杆 —— 乐得瑞 LDR6020,Type‑C 全场景互联 “智慧芯”
c语言·开发语言·计算机外设
feifeigo1231 天前
STM32矩阵键盘驱动(库函数版)实现
stm32·矩阵·计算机外设
是大强2 天前
定位桌面鼠标所在位置
计算机外设
龚礼鹏2 天前
优化android14低内存设备连接蓝牙键盘/鼠标后点击Disconnect断开蓝牙连接,页面卡顿(将1180ms优化到629ms)
计算机外设
shandianchengzi2 天前
【科普】安卓|安卓手机上如何简便实现Ctrl+Z(需要键盘或一台Windows电脑)
android·windows·智能手机·计算机外设·安卓·科普·记录
nashane2 天前
HarmonyOS 6学习:外接键盘CapsLock与长截图功能的实战调试与完整解决方案
学习·华为·计算机外设·harmonyos