树莓派支持鼠标和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 驱动器中,完成固件上传。

相关推荐
sensor_WU1 天前
【Delphi】实现在多显示器时指定程序运行在某个显示器上
计算机外设·多显示器
碎碎思1 天前
打破延迟极限的 FPGA 机械键盘
fpga开发·计算机外设
Despacito0o3 天前
瀚文机械键盘固件开发详解:HWKeyboard.cpp文件解析与应用
数据库·mongodb·计算机外设
步达硬件3 天前
【原理解析】为什么显示器Fliker dB值越大,闪烁程度越轻?
计算机外设·显示器
感叹号的豆浆3 天前
使用qt 定义全局钩子 捕获系统的键盘事件
qt·计算机外设
Despacito0o3 天前
瀚文(HelloWord)智能键盘项目深度剖析:从0到1的全流程解读
计算机外设
开开心心就好3 天前
高效视频倍速播放插件推荐
python·学习·游戏·pdf·计算机外设·电脑·音视频
Despacito0o5 天前
APM32主控键盘全功能开发实战教程:软件部分
驱动开发·计算机外设
Java&Develop6 天前
Windows如何定制键盘按键
计算机外设
LAM LAB7 天前
【键盘说明书备份】ENERGYFORT
计算机外设