# 基于STM32的新世代智能机器狗 **Repository Path**: D41C/NeoDog ## Basic Information - **Project Name**: 基于STM32的新世代智能机器狗 - **Description**: 一款基于STM32F407IGH6的新世代智能狗(NeoDog),主要功能模块包括FreeRTOS系统模块、人体红外模块、OLED显示模块、LED显示模块、WIFI控制模块、舵机模块(SG90)、ASRPRO语音模块、温湿度模块等 - **Primary Language**: C - **License**: MulanPSL-2.0 - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2025-09-04 - **Last Updated**: 2025-09-22 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # 基于STM32的新世代智能机器狗 ## 介绍 基于STM32F407IGH6的新世代智能狗(NeoDog),主要功能模块包括FreeRTOS系统模块、人体红外模块、OLED显示模块、LED显示模块、WIFI控制模块、舵机模块(SG90)、ASRPRO语音模块、温湿度模块等 ## 项目架构 项目总体架构如下图所示: ![输入图片说明](%E9%A1%B9%E7%9B%AE%E6%9E%B6%E6%9E%84%E9%A1%B9%E7%9B%AE%E6%9E%B6%E6%9E%84image.png) ### 功能模块详解 #### FreeRTOS系统模块 - **任务调度**:创建温湿度采集、WIFI控制、舵机动作、语音交互、OLED显示等任务,同等优先级调度 - **任务通信**:采用信号量机制,如语音模块触发舵机动作任务 - **时间管理**:利用时间切片功能,为每个任务分配固定时间片,提高系统效率 #### 人体红外模块 - **硬件**:RDA226,基于热释电效应检测人体红外辐射变化 - **功能**:检测到人体时,触发主控执行打招呼、跟随等动作 - **交互方式**:通过GPIO中断机制,检测到人体时拉低或拉高GPIO电平,触发主控中断 #### OLED模块 - **硬件**:0.96寸,128×64分辨率OLED屏,通过IIC协议与主控通信 - **功能**:显示温湿度信息及机器狗动作表情,提升交互性 - **IIC协议**:两线制同步协议,支持多主机多从机架构,通信由主机发起,包括起始信号、停止信号、数据传输和应答信号等 #### LED模块 - **硬件**:常用LED灯,通过GPIO控制 - **功能**:实现LED灯亮灭控制,推挽输出模式 - **GPIO输入输出方式**:输出有4种模式(开漏、推挽、复用开漏、复用推挽),输入有4种模式(上拉、浮空、下拉、模拟) #### 温湿度模块 - **硬件**:SHT20,高精度数字温湿度传感器,采用IIC通信 - **功能**:±0.3℃温度精度,±2%RH湿度精度 - **IIC流程**:初始化、开始信号、发送地址、发送命令字节、发送/读取数据、停止信号 #### WIFI模块 - **硬件**:ESP12F,通过串口3与主控通信 - **功能**:实现手机端连接WIFI模块并发送命令控制机器狗 - **串口通信**:TX、RX、GND三线连接,支持短距离通信,波特率决定数据传输速度,常用9600、115200,数据格式包括起始位、数据位、校验位、停止位 #### 舵机模块 - **硬件**:SG90,通过PWM调节舵机角度 - **功能**:实现机器狗前进、左转、右转、跳舞、打招呼、站立、趴下等动作 - **PWM控制**:20ms时基脉冲,0.5ms~2.5ms高电平对应角度控制 #### ASRPRO语音模块 - **硬件**:ASRPRO,通过串口与主控通信 - **功能**:通过语音模块发送指令控制机器狗动作,支持唱歌等扩展功能 **应用场景:** 适用于家庭陪伴、智能安防、环境监测等,提供互动娱乐、安全监控和环境数据采集等功能