没有合适的资源?快使用搜索试试~ 我知道了~
温馨提示
内容概要:该文章详述了一个8位电子密码锁的设计流程及其在Quartus II软件上的仿真过程。文章介绍了该电子密码锁的各项核心功能,如密码输入、密码清除、密码更改、解除电锁以及警报机制。此外,阐述了采用主、从双状态机架构完成8位密码输入与控制的方法,使用4x4矩阵键盘与七段数码管进行硬件接口操作,同时对各组成部分电路进行了详细的原理讲解,包括键盘扫描程序、时序控制电路及时钟信号同步处理等。最终实现了具备较强安全性能并能够响应多种操作指令的电子密码锁模拟系统。 适合人群:从事硬件设计或者数字逻辑设计的专业人士、大学电子工程专业的师生及相关领域的研究学者和技术爱好者。 使用场景及目标:适用于需要理解和掌握可编程逻辑器件开发工具和EDA设计理念的人群;可用于教学案例展示或者实际项目中的密码锁控制系统的设计与实现。 其他说明:此论文不仅提供了完整的程序清单供参考,还有丰富的图表辅助理解设计思路。文中提到存在的问题是目前尚停留在软件层次上未能制作成品的问题。建议增加实物制作环节来加强实践应用能力,并提出了改善措施比如添加管理员模式和改进显示方式等。
资源推荐
资源详情
资源评论































一.实验目的:
利用基于所学 EDA 相关知识以 Quartus II 软件设计一个具有较高安全性和较低成本的
通用电子密码锁,其具体功能要求如下:
1.密码输入:每按下一个数字键,就输入一个数值,并在显示器上的最左方显示‘*’
号,输入第二个数值后,最左方显示两个‘*’号,直到输入完 8 位数值密码后,显示器上
显示出 8 个‘*’号。输入完成 8 位数值密码后,输入的数值无效。
2.密码清除:按下此键可以撤销前一次输入的密码。
3.密码更改:在开锁状态下按下此键时会将目前的数字设定成新的密码,其它状态密码
更改无效。
4.解除电锁:按下此键会检查输入的密码是否正确,密码正确即开锁。
5.警报:密码在连续三次输入错误之后,电子密码锁会发出警报。
二.实验内容
1.新建工程 dianzimimasuo
2.新建 Verilog HDL File
选择菜单 File,选择 New 选项,根据所使用的硬件描述语言类型选择相应的新建文件型
(Verilog HDL File)。
3.输入程序
4.编译
5.仿真
三.任务分析和设计方案
作为通用电子密码锁,主要由三个部分组成:数字密码输入电路,密码锁控制电路和密
码显示电路。
各个模块电路的选取:
1.数字密码输入电路采用 4x4 矩阵键盘。
(1)4x4 矩阵键盘的工作原理:矩阵键盘又称为行列式键盘,它是由 4 条行线,4 条列
线组成的键盘,其原理如图 1.1 所示,在行线和列线的每个交叉点上,设置一个按键,按键
的个数是 4x4 个,按键排列如图 1.2 所示。当按下某个按键后,为了辨别和读取键值信息,
一 般 采 用 如 下 的 方 法 : 向 X 端 口 扫 描 输 入 一 组 只 含 一 个 0 的 4 位 数 据 , 如
1110,1101,1011,0111,如有按键按下,则 Y 口一定会输出对应的数据,因此,只要结合
X,Y 口的数据,就能判断按键的位置。

图 1.1 4x4 矩阵键盘电路
A:确认键
B:清除键
D:修改密码键
图 1.2 按键排列
(2)4x4 矩阵键盘检测程序:如下是用 Verilog 编写的 4x4 矩阵键盘键值扫描判断程序,
键盘扫描程序由 1 个 always 模块构成,在 always 模块中先进行模 4 计数,在计数器的每个
状态从 FPGA 内部送出一列扫描数据给键盘,然后读入经过去抖处理的 4 行数据,根据行,
列数据,确定按下的是哪个键。
//按键模块
module scankey(clk,a,b,keyvalue);
input clk; //键盘扫描时钟信号
input [3:0]b;
output reg[3:0]a; //输出扫描信号给键盘
output reg [3:0]keyvalue;
reg [1:0]q;
reg [3:0] qdb;//消抖后的 b
reg [3:0]rxbuf;
always @( posedge clk) begin //按键消抖
2
F
4
1
A
C
D
6
E
8
5
3
B
0
9
7

rxbuf[0] <= b[0];
qdb[0] <= ~(rxbuf[0] & (~b[0]));
end
always @( posedge clk) begin //按键消抖
rxbuf[1] <= b[1];
qdb[1] <= ~(rxbuf[1] & (~b[1]));
end
always @( posedge clk) begin //按键消抖
rxbuf[2] <= b[2];
qdb[2] <= ~(rxbuf[2] & (~b[2]));
end
always @( posedge clk) begin //按键消抖
rxbuf[3] <= b[3];
qdb[3] <= ~(rxbuf[3] & (~b[3]));
end
always@(posedge clk)
begin q<=q+1;
case(q) //给 a 口送出扫描数据
0:a<=4'b1110;
1:a<=4'b1101;
2:a<=4'b1011;
3:a<=4'b0111;
endcase
case({a,qdb}) //判断键值
8'b1110_0111:keyvalue<=4'b0000; //key0
8'b1110_1011:keyvalue<=4'b0001; //key1
8'b1110_1101:keyvalue<=4'b0010;
8'b1110_1110:keyvalue<=4'b0011;
8'b1101_0111:keyvalue<=4'b0100;
8'b1101_1011:keyvalue<=4'b0101;
8'b1101_1101:keyvalue<=4'b0110;
8'b1101_1110:keyvalue<=4'b0111;
8'b1011_0111:keyvalue<=4'b1000;
8'b1011_1011:keyvalue<=4'b1001; //key9
8'b1011_1101:keyvalue<=4'b1010; //keyA

8'b1011_1110:keyvalue<=4'b1011;
8'b0111_0111:keyvalue<=4'b1100;
8'b0111_1011:keyvalue<=4'b1101;
8'b0111_1101:keyvalue<=4'b1110; //keyE
8'b0111_1110:keyvalue<=4'b1111; //keyF
default:keyvalue=8'b1111_1111;
endcase
end
Endmodule
2.密码显示电路采用 8 个七段数码管显示密码输入状态,绿色发光二极管指示锁的开闭
状态,黄色发光二极管指示密码修改成功与否,红色发光二极管指示警报状态。
3.密码锁控制电路采用 EP4CE10F17C8 芯片控制。
根据以上选定的输入设备和显示器件,并考虑到实现各项数字密码锁功能的具体要求,
整个电子密码锁系统的总体组成框图如图 1.3 所示。
(1)密码锁输入电路包括时序产生电路,键盘扫描电路,键盘弹跳消除电路,键盘译
码电路等几个小的功能电路。
(2)密码锁控制电路包括按键数据的缓冲存储电路,密码的清除,变更,存储,密码
核对(数值比较电路),解锁电路(开/关门锁电路)等几个小的功能电路。
(3)七段数码管显示电路主要将待显示数据的 BCD 码转换成数码器的七段显示驱动编
码。

密码锁输入电路
扫描信号
按键输入
密码控制电路
显示电路
七段数码管
图 1.3 数字电子密码锁系统总体框图
总体设计方案:
采用主,从两个状态机来完成 8 位电子密码锁设计。
主状态机用来完成 waits(等待)状态,pass(开锁)状态,changing(改密)状态,alarm
(警报)状态之间的切换。主状态机状态图如图 2.1 所示
键盘扫描电路
时序产生电路
弹跳消除电路
键盘译码电路
键盘
寄存器清除信号发生电路
开关门锁电路
按键数据缓冲器
数值比较电路
BCD 至七段译码电路
——
——
——
——
——
——
——
——
剩余21页未读,继续阅读
资源评论

- KFC在逃汉堡皮2025-03-03资源内容详尽,对我有使用价值,谢谢资源主的分享。
- m0_747852442025-06-05内容与描述一致,超赞的资源,值得借鉴的内容很多,支持!
- 2401_844151542025-01-16总算找到了想要的资源,搞定遇到的大问题,赞赞赞!
- 2301_812009482025-06-30资源内容详细,总结地很全面,与描述的内容一致,对我启发很大,学习了。

森旺电子
- 粉丝: 8443
上传资源 快速赚钱
我的内容管理 展开
我的资源 快来上传第一个资源
我的收益
登录查看自己的收益我的积分 登录查看自己的积分
我的C币 登录后查看C币余额
我的收藏
我的下载
下载帮助


最新资源
- 医学院校计算机专业课程体系构建的探索与实践.docx
- 开题报告项目管理系统设计.pdf
- 最新最专业的企业网站推广方案.doc
- 计算机网络课程设计说明书兰州市第九中学校园网组建方案.doc
- 网络销售实习报告1000字.docx
- 国际项目管理专业资质认证IPMP试题概论.doc
- 工业互联网体系架构.doc
- 海赋国际网络营销方案.pptx
- 组合投资风险与收益与其MATLAB实现.doc
- GOSP-硬件开发资源
- 嵌入式系统期末考试试卷.doc
- 软件学院软件工程领域代码.doc
- 基于Android手机蓝牙控制的智能小车设计.doc
- 电子商务公司的口号.doc
- 网络营销战略计划.pptx
- 三菱FX2N系列PLC.ppt
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈



安全验证
文档复制为VIP权益,开通VIP直接复制
