
专业版
基于stm32的智能密码锁
7.3k
0
0
99
简介
基于STM32c8t6的密码锁,已开源,有源码,PCB,原理图等供大家学习 功能包含,指纹认证,iC卡解锁,蓝牙解锁,管理员模式等。 都是模块,适合新手复刻学习。
简介:基于STM32c8t6的密码锁,已开源,有源码,PCB,原理图等供大家学习 功能包含,指纹认证,iC卡解锁,蓝牙解锁,管理员模式等。 都是模块,适合新手复刻学习。开源协议
:MIT License
创建时间:2024-11-12 11:28:58更新时间:2026-05-22 00:49:51
描述
🔐 开源智能密码锁设计方案 | 学生复刻指南
安全·便捷·易实现
支持IC卡/蓝牙/密码解锁 | 活体指纹识别 | 防暴力破解 | 完整开源代码
一、功能设计:
🚪 用户模式(日常使用)
| 解锁方式 | 操作说明 | 适用场景 |
|---|---|---|
| 📲 蓝牙解锁 | 手机靠近自动连接 | 年轻人/科技爱好者 |
| 🪪 IC卡解锁 | 卡片贴近识别区"滴"一声 | 老人/小孩 |
| 🔢 密码解锁 | 输入6位数字密码 | 所有用户 |
🔒 安全防护(智能防御)
- 2次解锁失败 → 锁定10秒
- 5次解锁失败 → 锁定30秒
- 6次解锁失败 → 触发85dB警报
- 15秒无操作 → 自动锁屏节电
👨💻 管理员模式(超级权限)
[进入方式]
1. 手机蓝牙连接
2. 发送"root"指令
3. 活体指纹认证
[核心功能]
√ 指纹管理(添加/删除)
√ IC卡管理(注册/注销)
√ 密码修改
√ 一键解锁
√ 解除警报
[安全机制]
× 指纹6次错误 → 永久警报
× 必须物理断电重置
🖥 锁屏界面
+-------------------+
| 2025-06-28 |
| SAT 15:30 |
+-------------------+
|显示时间和日期 |
+-------------------+
二、硬件清单:百元级低成本方案
| 模块类型 | 推荐型号 | 关键参数 | 成本 |
|---|---|---|---|
| 主控芯片 | STM32F103C8T6 | ARM Cortex-M3 | ¥10 |
| 指纹识别 | FPM10A光学模块/AS608 | 活体检测防假指纹 | ¥32 |
| IC卡读写 | RC522 RFID模块 | 支持Mifare卡片 | ¥8 |
| 蓝牙通信 | HC-08 BLE4.0 | 低功耗 | ¥12 |
| 显示屏 | 0.96寸OLED I2C | 128x64分辨率 | ¥9 |
| 报警器 | 有源蜂鸣器 | ≥85dB | ¥1 |
| 执行机构 | 5V继电器 | 10A负载能力 | ¥2 |
💡 最贵总成本约¥70左右 | 所有模块兼容Arduino开发环境
三、功能演示(图文详解)
管理员模式激活流程
步骤1:手机蓝牙连接

使用蓝牙调试APP发送root指令
步骤2:指纹验证

💡 注:屏幕刷新率导致条纹效果,实际显示清晰
步骤3:双端操作绑定指纹
- 手机APP发送存储位置(如#01)
- 锁具提示"请按压指纹"
- 用户按压手指至指纹模块
- 系统存储特征码到Flash
四、软件架构(核心逻辑)
主程序框架
// 核心逻辑
int main(void)
{
// 初始化阶段
HAL_Init(); // 硬件抽象层
SystemClock_Config(); // 时钟配置
Peripherals_Init(); // 外设初始化
// 主循环
while (1) {
CheckUnlockMethods(); // 检测解锁方式
HandleAdminRequests(); // 处理管理员指令
UpdateDisplay(); // 刷新OLED显示
MonitorSecurity(); // 安全监控
ManagePower(); // 功耗管理
}
}
main.c
extern uint8_t AS608_RxPacket[400];
uint8_t matrix_num = 0xFE;
int main(void)
{
Timer_Init();//定时器初始化
while(1)
{
Store_Init();//内部FLash存储
View_Init();//初始化页面
View_First();//密码锁页面
}
}
其他代码自取就行,这里就不一一赘述,里面的注释自我感觉还是蛮详细的
下面先通过一些视频片段展示,因为管理员模式要用到手机,只能一个手机按完再打开相机录制,请见谅
📂 代码模块说明()
| 文件名 | 功能描述 |
|---|---|
displayas608.c | 指纹采集/比对/存储 |
displayrc522.c | IC卡UID识别与管理 |
Serial.c | AT指令解析/数据包封装 |
Myview.c | 失败计数/锁定/报警触发逻辑/密码设置 |
OLED.c | OLED菜单/状态显示 |
Store.c | Flash数据存储管理 |
五、复现指南(学生必看)
🛠️ 硬件连接要点
指纹模块接线:
VCC → 3.3V TX → PA10
GND → GND RX → PA9
继电器控制:
IN → PB1 COM → 门锁正极
NO → 12V NC → 悬空
⚠️ 常见问题解决
-
继电器抖动
- 控制引脚并联104电容
- 代码中添加10ms消抖延时
-
指纹识别失败
- 确保手指完全覆盖传感器
- 更新AS608算法库
-
蓝牙连接不稳定
- 检查天线朝向
- 避开2.4GHz干扰源
💡 扩展升级建议
graph LR
A[基础功能] --> B[USB充电接口]
A --> C[WiFi远程报警]
A --> D[网页管理界面]
C --> E[微信通知]
D --> F[多用户管理]
🌟 致小伙伴们
本项目已通过验证,提供:
✅ 完整源码 ✅ PCB工程文件 ✅ 模块资料
遇到问题可以评论,欢迎讨论!
祝各位成功做出自己独一无二的的密码锁 🔓 → 🚀
设计图
未生成预览图,请在编辑器重新保存一次BOM
暂无BOM
克隆工程添加到专辑
0
0
分享
侵权投诉
知识产权声明&复刻说明
本项目为开源硬件项目,其相关的知识产权归创作者所有。创作者在本平台上传该硬件项目仅供平台用户用于学习交流及研究,不包括任何商业性使用,请勿用于商业售卖或其他盈利性的用途;如您认为本项目涉嫌侵犯了您的相关权益,请点击上方“侵权投诉”按钮,我们将按照嘉立创《侵权投诉与申诉规则》进行处理。
请在进行项目复刻时自行验证电路的可行性,并自行辨别该项目是否对您适用。您对复刻项目的任何后果负责,无论何种情况,本平台将不对您在复刻项目时,遇到的任何因开源项目电路设计问题所导致的直接、间接等损害负责。










