摘要:随着电子技术的发展,越来越多的机械式密码锁被电子密码锁所替代,同时电子密码锁自身也在不断的更新换代,基于单片机技术的电子密码锁设计较多同时也有PCB板和PLC的设计。基于单片机的密码锁因为程序经常跑飞, 在用户使用中密码锁的可靠性降低。于是乎优于其他设计的基于FPGA用Verilog硬件语言描述的电子密码锁设计方法诞生了。
本设计使用Verilog语言程序描述各个模块以及每个模块之间的连接关系,这里将电子密码锁电路为四个模块,分别是输入输出模块、主控模块、显示模块和报警模块。将各模块用硬件描述语言Verilog分别编写完成后,再利用Quartus II进行仿真论证并将程序下载到FPGA中完成硬件调试实现电子密码锁的设计与实现。在密码开锁的基础上增加了数码显示控制与键盘防抖以及误码报警等使系统易于操作,体现了设计为服务的目的。
关键词:FPGA;密码锁;Quartus II;Verilog
目录
摘要
ABSTRACT
引言-1
1电子密码锁原理-2
1.1 编码总量的确定-2
1.2编码制式的选择-2
1.3 误码输入保护措施-2
1.4系统设计目标-3
2系统分析-4
2.1 FPGA简介-4
2.2模块化设计FPGA-5
2.3自上而下设计方法-5
2.4 Verilog硬件描述语言-6
2.4.1 模块的描述方式-6
3系统设计-7
3.1系统功能描述-7
3.1.1 顶层实体说明的Verilog语言程序-7
3.1.2 顶层结构体的设计-8
3.2 底层模块的分析、实现与仿真-10
3.2.1输入消抖同步电路-10
3.2.2 编码电路-10
3.2.3 比较电路-11
3.2.4 预置密码电路-11
3.2.5 计数器选择电路-12
3.2.6 控制指示灯电路-12
3.2.7 分频电路-12
3.2.8 七段显示译码电路-14
3.4 控制器模块的分析-15
3.5 系统的RTL分析-16
3.6 系统硬件-18
4总结-19
致谢-20
参考文献-21
附录Verilog程序-22