2026/3/11 18:16:33
网站建设
项目流程
档案馆网站机房建设,网站设计原则的历史,简历自我评价,平台代运营量产空中鼠标电路设计资料
原理图PCB资料
空中鼠标硬件由两个部分组成#xff0c;鼠标端#xff08;发射板#xff09;和USB端#xff08;接收板#xff09;。
◆ 发射板主要器件是STM32、MPU6050、NR24L01。
MPU6050感知人手的动作#xff08;X、Y、Z轴上的角速度值PCB资料 空中鼠标硬件由两个部分组成鼠标端发射板和USB端接收板。 ◆ 发射板主要器件是STM32、MPU6050、NR24L01。 MPU6050感知人手的动作X、Y、Z轴上的角速度值并将测得的数据通过I2C数据接口传输给STM32。 STM32内部自带12位ADC对数据做转换并且通过NRF24L01无线传输给USB端。 ◆ 接收板是模拟的HID鼠标和键盘即插即用通过USB接口和电脑连接。 USB端同样有一颗NRF24L01芯片接收发射板传输过来的数据通过SPI接口传输给STM32。 ?作为电脑的输入设备空中鼠标可以像传统鼠标一样操作屏幕仅需要在空中晃动或者移动就可以实现鼠标的操作和翻页等功能。最近在研究一个挺有意思的东西——空中鼠标。这玩意儿不用沾桌子挥挥手就能控制屏幕想想都觉得酷毙了。今天就带大家拆开这个黑匣子看看它是怎么工作的。发射板你的每一个动作都被我捕捉发射板是整个系统的眼睛和大脑主要由三个核心元件组成STM32、MPU6050和NR24L01。MPU6050这个小家伙负责感知你的动作。它能捕捉到你手部在X、Y、Z三个轴上的角速度值简单来说就是你手是怎么动的。这些数据通过I2C接口传给STM32。STM32这个小机灵鬼接到数据后就开始忙活了。它会用自己内部的12位ADC模数转换器把这些数据处理一下然后通过NR24L01这个无线小能手把这些数据发射出去。量产空中鼠标电路设计资料 原理图PCB资料 空中鼠标硬件由两个部分组成鼠标端发射板和USB端接收板。 ◆ 发射板主要器件是STM32、MPU6050、NR24L01。 MPU6050感知人手的动作X、Y、Z轴上的角速度值并将测得的数据通过I2C数据接口传输给STM32。 STM32内部自带12位ADC对数据做转换并且通过NRF24L01无线传输给USB端。 ◆ 接收板是模拟的HID鼠标和键盘即插即用通过USB接口和电脑连接。 USB端同样有一颗NRF24L01芯片接收发射板传输过来的数据通过SPI接口传输给STM32。 ?作为电脑的输入设备空中鼠标可以像传统鼠标一样操作屏幕仅需要在空中晃动或者移动就可以实现鼠标的操作和翻页等功能。这里有个小细节NR24L01的工作频率是2.4GHz这和Wi-Fi是一个频段。所以有时候用空中鼠标时可能会受到Wi-Fi信号的干扰这也是为什么有时候鼠标会卡顿的原因。接收板你的动作我全接收接收板是整个系统的耳朵和嘴巴。它同样用了一颗NR24L01负责接收发射板发来的数据。数据接收后STM32会通过SPI接口把这些数据处理一下然后通过USB接口传给电脑。电脑收到这些数据后会把它们当作普通的鼠标和键盘输入来处理。这里有个关键点接收板模拟的是HIDHuman Interface Device设备。HID是USB设备的一种类型包括鼠标、键盘、游戏手柄等等。通过模拟HID设备空中鼠标就能像普通鼠标一样被电脑识别和使用了。实战代码数据怎么传的这么快发射板代码片段void MPU6050_Init(void) { // 初始化MPU6050 I2C_WriteByte(MPU6050_ADDRESS, PWR_MGMT_1, 0x00); // 唤醒传感器 I2C_WriteByte(MPU6050_ADDRESS, CONFIG, 0x00); // 配置传感器 I2C_WriteByte(MPU6050_ADDRESS, SMPLRT_DIV, 0x07); // 设置采样率 }接收板代码片段void USB_Process(void) { if (usb_rx_data_available) { // 处理接收到的数据 process_mouse_data(); usb_rx_data_available 0; } }总结黑科技背后的简单逻辑空中鼠标虽然看起来很高大上但本质上就是几个元件的配合工作。MPU6050负责感知动作STM32负责数据处理NR24L01负责无线传输接收板负责数据接收和转发。整个过程环环相扣缺一不可。这个设计的最大优点就是成本低、实现简单。只要掌握基本的嵌入式开发知识完全可以在家里 DIY 一个属于自己的空中鼠标。