基于STM32的多功能旅行箱_329
文章目录
- 一、前言
-
- 1.1 项目介绍
-
- 【1】项目开发背景
- 【2】设计实现的功能
- 【3】项目硬件模块组成
- 【4】设计意义
- 【5】国内外研究现状
- 【6】摘要
- 1.2 设计思路
- 1.3 系统功能总结
- 1.4 开发工具的选择
-
- 【1】设备端开发
- 【2】上位机开发
- 1.5 参考文献
- 1.6 系统框架图
- 1.7 系统原理图
- 1.8 实物图
- 1.9 模块的技术详情介绍
-
- 【1】HC05蓝牙模块
- 【2】ADXL345加速度传感器
- 【3】HX711称重传感器
- 【4】海凌科V20语音识别模块
- 【5】ATGM336H-5N-GPS模块
- 二、硬件选型
-
- 2.1 STM32核心板
- 2.2 PCB板
- 2.3 USB下载线
- 2.4 语音识别模块
- 2.5 杜邦线
- 2.6 OLED显示屏
- 2.7 小车底盘+控制板
- 2.8 蜂鸣器模块
- 2.9 HC05-蓝牙模块
- 2.10 ADXL345 三轴加速度计模块
- 2.11 GPS模块
- 2.12 HX711称重传感器
- 2.13 手势识别模块
- 三、Qt开发入门与环境搭建
-
- 3.1 Qt是什么?
- 3.2 Qt版本介绍
- 3.3 Qt开发环境安装
- 3.4 开发第一个QT程序
- 3.5 调试输出
- 3.6 QT Creator常用的快捷键
- 3.7 QT帮助文档
- 3.8 UI设计师使用
- 3.9 按钮控件组
- 3.10 布局控件组
- 3.11 基本布局控件
- 3.12 UI设计师的布局功能
- 四、上位机APP开发
-
- 4.1 Qt开发环境安装
- 4.2 新建上位机工程
- 4.3 切换编译器
- 4.4 编译测试功能
- 4.5 设计UI界面与工程配置
-
- 【1】打开UI文件
- 【2】开始设计界面
- 4.6 设计代码
-
- 4.6.1 打开工程
- 4.6.2 蓝牙配置与连接
-
- 1. 实例化蓝牙相关的对象
- 2. 关联蓝牙设备相关的信号
-
- 2.1 设备发现信号
- 2.2 蓝牙数据可读信号
- 2.3 蓝牙连接成功信号
- 2.4 蓝牙断开连接信号
- 2.5 蓝牙数据写入成功信号
- 3. 检查蓝牙状态并设置初始界面
-
- 3.1 检查蓝牙是否开启
- 3.2 显示本地蓝牙名称
- 3.3 默认显示蓝牙页面
- 4. 总结
- 4.6.4 蓝牙接收数据处理
- 4.6.5 按钮事件处理
-
- 1. **蓝牙配置页面切换 (`on_pushButton_config_clicked`)**
- 2. **设备配置页面切换 (`on_pushButton_dev_page_clicked`)**
- 3. **遥控页面切换 (`on_pushButton_info_page_clicked`)**
- 4. **锁定状态控制 (`on_pushButton_lockStatus_clicked`)**
- 5. **旅行模式控制 (`on_pushButton_travelMode_clicked`)**
- 6. **小车控制:前进(按下) (`on_pushButton_control_front_pressed`)**
- 7. **小车控制:前进(松开) (`on_pushButton_control_front_released`)**
- 8. **小车控制:后退(按下) (`on_pushButton_control_back_pressed`)**
- 9. **小车控制:后退(松开) (`on_pushButton_control_back_released`)**
- 10. **小车控制:左(按下) (`on_pushButton_control_Left_pressed`)**
- 11. **小车控制:左(松开) (`on_pushButton_control_Left_released`)**
- 12. **小车控制:右(按下) (`on_pushButton_control_right_pressed`)**
- 13. **小车控制:右(松开) (`on_pushButton_control_right_released`)**
- 14. **小车控制:停止 (`on_pushButton_control_stop_clicked`)**
- 4.5 编译Windows上位机
- 4.6 配置Android环境
-
- 【1】选择Android编译器
- 【2】创建Android配置文件
- 【3】配置Android图标与名称
- 【4】编译Android上位机
- 五、STM32硬件代码开发
-
- 5.1 硬件连线说明
- 5.2 硬件原理图
- 5.3 硬件组装过程
- 5.4 硬件实物图
- 5.5 KEIL工程截图
- 5.6 程序下载
- 5.7 程序正常运行效果
- 5.8 取模软件的使用
- 5.9 蓝牙模块与手机APP通信
-
- 代码解析:
- 核心代码:
-
- 代码解释:
- 关键函数说明:
- 代码功能总结:
- 5.10 硬件初始化
-
- 1. **JTAG禁用**
- 2. **LED初始化**
- 3. **蜂鸣器初始化和上电提醒**
- 4. **按键初始化**
- 5. **GPS模块初始化**
- 6. **串口2初始化(与HC05蓝牙模块通信)**
- 7. **串口3初始化(与海凌科语音识别模块通信)**
- 8. **串口5初始化(与小车底板通信)**
- 9. **HX711称重模块初始化**
- 10. **OLED显示初始化**
- 11. **ADXL345加速度传感器初始化**
- 12. **ADXL345检测异常**
- 13. **ATK-MS7620模块初始化**
- 14. **ATK-MS7620模块配置为手势检测模式**
- 15. **称重传感器校准**
- 16. **成功提示音**
- 17. **蜂鸣器报警初始化**
- 18. 总结:
- 5.11 按键代码
-
- 1. **按键检测**
- 2. **翻页操作(按键1)**
- 3. **校准操作(按键2)**
- 4. **停止小车操作(按键3)**
- 5. 总结
- 5.12 APP下发命令处理
-
- 1. **接收数据的标志**
- 2. **旅行模式控制**
- 3. **锁定状态控制**
- 4. **小车控制命令**
- 5. **重置接收标志**
- 6. 总结
- 5.13 语音识别处理代码
-
- 1. **接收数据的标志**
- 2. **处理接收到的语音指令**
- 3. **重置接收标志**
- 4. 总结
- 5.14 手势识别处理
-
- 1. **获取手势并判断处理**
- 2. **根据不同手势执行相应的操作**
-
- **上手势**
- **下手势**
- **左手势**
- **右手势**
- **向前手势**
- **向后手势**
- **顺时针手势**
- **逆时针手势**
- **挥手手势**
- 3. **默认处理**
- 4. **总结**
- 5.15 项目主逻辑代码
-
- 1. OLED显示部分
- 2. 三轴加速度采集
- 3. 时间轮询和周期性操作
- 4. GPS数据采集
- 5. 报警机制
- 6. 数据上传
- 7. 总结
- 六、使用STM32代码的流程以及注意事项
-
- 6.1 第1步
- 6.2 第2步
- 6.3 第3步
- 七、语音识别模块固件设计与烧录
-
- 7.1 前言
-
- 7.1 模块介绍
- 7.2 模块购买
- 7.2 修改自定义语音识别词汇
-
- 7.1 登录官网
- 7.2 定制SDK固件
- (1)点击创建产品
- (2)添加产品
- (3)选择产品,点击开发中心
- (4)选择创建SDK
- (5)配置SDK信息
- (6)前端信号处理
- (7)引脚配置
- (8)添加自定义的唤醒词
- (9)离线命令词与应答语自定义
- (10)免唤醒词设置
- (11)发音人配置
- (12)欢迎语播报设置
- (13)配置完成
- 7.3 烧录固件
-
- 7.1 板子接线
- 7.2 打开软件工具
- 7.3 选择烧录的文件
- **任务书**
-
-
-
- **(1)课题背景与目的**
- **(2)设计的内容**
- **(3)设计的基本要求**
-
-
- **论文目录大纲**
- **开题报告**
-
- **一、选题来源与背景**
- **二、研究目的**
- **三、国内外研究现状**
- **四、主要参考文献**
- **五、研究内容**
- **六、研究思路**
- **七、研究方法**
- **八、设计的总体结构描述**
- **九、设计的各个功能模块描述**
- **十、可行性分析**
- **十一、预期成果**
【基于STM32的多功能旅行箱_329】 https://www.bilibili.com/video/BV1X616BjEF7/?share_source=copy_web&vd_source=347136f3e32fe297fc17177194ce0a8b
一、前言
1.1 项目介绍
【1】项目开发背景
随着科技的快速发展和人们生活水平的提高,智能化产品逐渐渗透到各个领域,旅行箱作为出行必备工具,也朝着智能化方向发展。传统旅行箱仅具备基本的存储功能,无法满足现代用户对安全性、便捷性和交互性的需求。例如,旅行途中行李箱被盗或遗失、搬运过程中称重不便、需要手动拖拉等问题,给用户带来了诸多不便。因此,设计一款具备智能防盗、远程控制、GPS定位、语音交互、称重检测和自动移动功能的多功能旅行箱,成为一种现实需求。
当前市场上已有部分智能旅行箱产品,但大多功能单一,如仅支持GPS定位或简单的蓝牙锁控,无法实现智能交互和自动移动控制。针对这些不足,本项目基于STM32单片机设计多功能旅行箱,集成蓝牙通信、语音识别、GPS定位、称重检测和运动控制等技术,提供更全面的智能化体验。用户可通过手机APP远程锁定行李箱,防止盗窃和丢失;在旅行模式下,行李箱可检测与手机的连接状态,断开后自动报警
