# Smart-Gate-System
**Repository Path**: zhangyyyyyyyyy/Smart-Gate-System
## Basic Information
- **Project Name**: Smart-Gate-System
- **Description**: 独立开发终端三重认证逻辑(指纹/IC 卡/密码)与毫米波雷达安防监测功能。
集成多种传感器(AS608/RC522/毫米波雷达),通过 ESP8266 基于 TCP/IP 协议将数据上传至控制端,实现异常行为远程报警与双向通信。
构建完整“感知-认证-远程管理”安防闭环,系统响应延迟<200ms,具备高扩展性
- **Primary Language**: Unknown
- **License**: GPL-3.0
- **Default Branch**: master
- **Homepage**: None
- **GVP Project**: No
## Statistics
- **Stars**: 0
- **Forks**: 1
- **Created**: 2025-08-05
- **Last Updated**: 2025-11-11
## Categories & Tags
**Categories**: Uncategorized
**Tags**: None
## README
# Smart-Gate-System
## 介绍
该项目是基于STM32F103系列单片机的智能门禁系统,采用FreeRTOS实时操作系统进行多任务管理。相较于传统的智能门禁系统,本项目是一个功能完善的嵌入式智能门禁系统,不仅集成了多种身份识别方式和联网报警功能,该系统还新添了语音系统以及静默传输数据,用于标记可疑人员的优势。适用于独居老人或者残障人士居家使用。此外可以通过控制端STM32F429系列单片机作为中控设备进行多设备连接,实现智能家居与自动化控制等。
## 工程架构
### 硬件与外设支持
项目使用到的MCU有:STM32F103VET6(作为终端设备),STM32F429IGT6(作为控制端)
项目初始化了多种外设,包括GPIO、DMA、定时器、I2C、SPI、多个串口(USART1/2/3、UART5)等,支持多种传感器和模块:
指纹识别模块(AS608)、IC卡(RC522)、3*4矩阵键盘、OLED显示屏(0.96寸)、语音模块(ASRPRO)、人体毫米波雷达(LD2412)、WiFi模块(ESP8266)、4G模块(ML307R)

### 传感器模块与MCU之间的连接:
(1)指纹识别模块(AS608)
| 序号 | 传感器 | MCU |
|----|-----|--------------|
| 1 | Vi | 3V3 |
| 2 | Tx | A3-USART2_Rx |
| 3 | Rx | A2-USART2_Tx |
| 4 | GND | GND |
| 5 | WAK | C4 |
| 6 | Vt | 3V3 |
(2)IC卡(RC522)
| 序号 | 传感器 | MCU |
|----|------|---------------|
| 1 | VCC | 3.3V |
| 2 | RST | - |
| 3 | GND | GND |
| 4 | IRQ | - |
| 5 | MISO | PA6-SPI1_MOSI |
| 6 | MOSI | PA7-SPI1_MISO |
| 7 | SCK | PA5-SPI1_SCK |
| 8 | SDA | PA4 |
(3)3*4矩阵键盘
| 序号 | 传感器 | MCU |
|----|------|------|
| 1 | - | - |
| 2 | COL2 | PC11 |
| 3 | ROW1 | PC6 |
| 4 | COL1 | PC10 |
| 5 | ROW4 | PC9 |
| 6 | COL3 | PC5 |
| 7 | ROW3 | PC8 |
| 8 | ROW2 | PC7 |
| 9 | - | - |
(4)OLED显示屏
| 序号 | 传感器 | MCU |
|----|-----|------|
| 1 | SDA | PB7 |
| 2 | SCL | PB6 |
| 3 | VCC | 3.3V |
| 4 | GND | GND |
(5)语音模块(ASRPRO)
| 序号 | 传感器 | MCU |
|----|----------|------|
| 1 | GND | GND |
| 2 | 5V | 5V |
| 3 | UART0_TX | PD2 |
| 4 | UART0_RX | PC12 |
| 8 | MIC+ | 红线 |
| 9 | MIC- | 黑线 |
| 17 | SPK- | 黑线 |
| 18 | SPK+ | 红线 |
(6)人体毫米波雷达(LD2412)
| 序号 | 传感器 | MCU |
|----|-----|-----|
| 1 | OUT | PE2 |
| 2 | GND | GND |
| 3 | 5V | 5V |
(7)WiFi模块(ESP8266)
绑定在开发板上的,仅需用跳帽连接下面的引脚
| 序号 | 传感器 | MCU |
|----|-----|------|
| 1 | URX | PB10 |
| 2 | UTX | PB11 |
## FreeRTOS多任务架构
### 终端FreeRTOS设计
在freertos.c中,采用事件组、消息队列、信号量等FreeRTOS机制实现任务间高效通信与同步。系统创建了多个任务(线程):
defaultTask:门前检测与状态指示(如检测到有人则点亮绿灯,停留过久则报警)
Input_Task:处理指纹、IC卡、密码等输入事件,并通过事件组和队列与其他任务通信
Auth_Task:负责身份验证逻辑,包括指纹、IC卡、密码的比对、管理员操作等
Display_Task:负责OLED显示,根据不同状态显示提示信息
Voice_Task、Network_Task:分别用于语音提示和联网操作(如异常报警上传)
### 控制端FreeRTOS设计
## 功能介绍
### 终端功能
用户靠近门时,系统自动检测并点亮指示灯。
用户可通过指纹、IC卡或密码进行身份验证,支持管理员和普通用户两种模式。
管理员可通过特定密码进入管理模式,进行指纹/IC卡的添加、删除、密码修改等操作。
所有输入和验证结果通过OLED屏幕实时显示,验证失败多次可自动联网报警。
### 控制端功能