本次实验选题为基于密码访问的门锁系统,类似于现代智能家居中的智能门锁。在本次实验中,我实现了通过键盘输入密码,若正确开启门锁(电机),若错误给出提示;并通过LED显示提示语以及密码输入的结果;还可以通过连续敲击特殊键,输入正确密码和新密码实现密码的更改。
二、设计方案
为了达到实验目标,在本次实验中我编写了两个程序:主程序 mylock 以及监控程序 lock_guard,接下来分开介绍两个程序的设计方案。
mylock 程序
使用了双线程,其中主线程负责接受输入以及进行 hash 校验等,led 线程负责控制led输出相应的提示语及结果。
主线程的主要架构如下(mylock/main.c):