
目 录摘 要 IAbstract II1 绪论 11.1 研究背景及其意义 11.2 国内外研究现状 21.3 此次设计实现的功能 32 系统方案设计 52.1 系统设计方案 52.2 主要元器件选择 52.2.1 主控芯片方案 52.2.2 显示模块方案选择 62.2.3 无线传输方案选择 63 硬件电路设计 73.1单片机最小系统 73.1.1主控模块电路 73.1.2 晶振电路 93.1.3 复位电路 113.1.4 电源电路 123.1.5下载电路 123.2 MPU6050手势识别模块 133.3 LCD1602显示模块电路 143.4 蓝牙模块ECB02 174 系统程序设计 194.1 编程软件介绍 194.2 主机系统主流程设计 194.3 主机系统主流程设计 204.4 LCD1602液晶显示子流程 214.5 蓝牙模块子流程 225 系统仿真测试 235.1仿真总图 23图5-1 整体仿真图 235.1功能仿真测试 23图5-2 向下姿势仿真图 246总 结 25致 谢 26参考文献 27附 录 29附录一原理图 29附录二PCB 30附录三主程序 311.3 此次设计实现的功能本文设计并实现了一种新颖的手势识别智能控制器完成了相关电路的布局设计并成功搭建了系统仿真实验平台。同时我们还编制了专用于复杂手势识别的功能模块。该控制器主要实现了以下核心功能首先在从机部分我们采用了MPU6050传感器来精确识别手势动作包括上下左右等方向。一旦识别到相应的手势从机会立即通过蓝牙通信技术将检测到的数据发送至主机部分。其次在主机部分我们设计了接收从机发送数据的蓝牙模块。一旦接收到数据主机会立即处理这些数据并通过LCD1602显示屏将识别到的手势方向如up、down、left、right直观地展示给用户。通过这种设计我们成功实现了一种高效且准确的手势识别智能控制器为用户提供了更加便捷和智能的交互体验。2 系统方案设计2.1 系统设计方案本次设计采用了单片机作为主控制器并结合其他模块共同构建了一个完整的手势控制系统。整个系统由主机和从机两部分组成它们各自包含中控、输入和输出三个主要部分。在中控部分我们选用了功能强大的单片机控制器负责接收输入部分的数据通过内部算法进行数据处理和逻辑判断最终实现对输出部分的精准控制。从机的输入部分主要由MPU6050模块组成它能够准确检测用户的手势动作识别出手势的方向是向上、向下、向左还是向右。此外供电模块为从机提供稳定的电源确保其正常工作。从机的输出部分则通过蓝牙技术将检测到的手势数据传输给主机。主机的输入部分同样包含两个模块。首先是蓝牙模块它负责接收从机发送的手势数据并将其传输到主机的显示模块上。其次是供电模块为主机提供稳定的电力支持。主机的输出部分则是通过显示模块直观地展示当前用户的手势。从机部分 /********************************** 包含头文件 **********************************/ #include main.h #include uart.h #include MPU6050.h /********************************** 变量定义 **********************************/ uint time_num 0; //10ms计时变量 char send_buf[20]; int MPU6050_accel_x 0; //X轴加速度 int MPU6050_accel_y 0; //Y轴加速度 int MPU6050_accel_z 0; //Z轴加速度 int MPU6050_gyro_x 0; //X轴角速度 int MPU6050_gyro_y 0; //Y轴角速度 int MPU6050_gyro_z 0; //Z轴角速度 /********************************** 函数声明 **********************************/ void Delay_function(uint x); //延时函数(ms) void Monitor_function(void); //监测函数 /**** ******* 主函数 *****/ void main() { Uart_Init(); //串口初始化函数 Delay_function(50); //延时50ms MPU6050_Init(); Delay_function(50); //延时50ms while(1) { Monitor_function(); //监测函数 Delay_function(10); //延时10ms time_num; //计时变量1 if(time_num 5000) { time_num 0; } } }