您好,欢迎访问三七文档
当前位置:首页 > 电子/通信 > 综合/其它 > 电子密码锁课程设计分析解析
目录摘要:............................................................-0-第一章:系统设计总述..............................................-2-1.1设计要求...................................................-2-1.2设计方案..................................................-2-第二章:总体程序设计..............................................-4-2.1整体组装设计原理图.........................................-4-2.2顶层模块程序调用..........................................-5-2.2.1程序部分.............................................-5-2.2.2整体原理文件........................................-7-2.2.3顶层模块仿真........................................-8-第三章:单元模块程序设计..........................................-9-3.1输入模块..................................................-9-3.1.1输入模块程序.......................................-10-3.1.2输入模块元件........................................-12-3.1.3输入模块仿真........................................-13-3.2电子密码锁系统控制模块..................................-13-3.2.1控制模块程序........................................-14-3.2.2控制模块元件........................................-16-3.2.3控制模块仿真........................................-16-3.3电子密码锁系统显示模块...................................-17-3.2.1显示模块程序........................................-18-3.2.2显示模块元件........................................-19-3.2.3显示模块仿真........................................-20-第五章:收获与体验...............................................-21-参考文献.........................................................-22-摘要:SOPC/EDA课程设计:电子密码锁设计-1-随着人们生活水平的提高,如何实现家庭防盗这一问题也变的尤其的突出,传统的机械锁由于其构造的简单,被撬的事件屡见不鲜,电子锁由于其保密性高,使用灵活性好,安全系数高,受到了广大用户的亲呢。电子电路设计常用的方法是试验设计法,一般都包括设计方案提出、方案验证、方案修改3个阶段。传统的试验设计法通常采用手工搭接实验电路来完成,往往需要经过试验和修改的反复过程,直到设计出正确的电路。随着电子和计算机技术的发展,产生了在计算机平台上的EDA(电子设计自动化)技术,这种技术除了具有强大的设计功能外,还具有测试、仿真分析、管理等功能。在EAD桌面设计环境下用计算机来完成电路的系统综合设计和仿真。-2-第一章:系统设计总述1.1设计要求设计一个具有较高安全性和较低成本的通用电子密码锁,其具体功能要求如下:(1)数码输入:每按下一个数字键,就输入一个数值,并在显示器上的最右方显示出该数值,同时将先前输入的数据依序左移一个数字位置。(2)数码清除:按下此键可清除前面所有的输入值,清除成为“0000”。(3)密码更改:按下此键时会将目前的数字设定成新的密码。(4)激活电锁:按下此键可将密码锁上锁。(5)解除电锁:按下此键会检查输入的密码是否正确,密码正确即开锁。1.2设计方案作为通用电子密码锁,主要由三个部分组成:数字密码输入电路、密码锁控制电路和密码锁显示电路。作为电子密码锁的输入电路,可供选择的方案有数字机械式键盘和触摸式数字键盘等多种。根据以上选定的输入设备和显示器件,并考虑到实现各项数字密码锁功能的具体要求,整个电子密码锁系统的总体组成框图如图1.1所示。(1)密码锁输入电路包括时序产生电路、键盘扫描电路、键盘弹跳消除电路、键盘译码电路等几个小的功能电路。(2)密码锁控制电路包括按键数据的缓冲存储电路,密码的清除、变更、存储、激活电锁电路(寄存器清除信号发生电路),密码核对(数值比较电路),解锁电路(开/关门锁电路)等几个小的功能电路。(3)七段数码管显示电路主要将待显示数据的BCD码转换成数码器的七段显示驱动编码。(4)总体设计如(图1.1)所示。SOPC/EDA课程设计:电子密码锁设计-3-图1.1(电子密码锁总体方框图)(5)系统组成根据系统的设计要求,系统设计采用自顶向下的设计方案。顶层设计采用原理图设计方案,系统的整体组装设计有密码输入模块、密码控制模块、密码显示模块三部分组成。键盘扫描电路时序产生电路时钟发生器键盘弹跳消除电路键盘译码电路寄存器清除信号发生器电路开/关门锁电路数值比较器按键数据缓存器BCD七段译码电路密码锁输入模块显示模块密码锁控制模块-4-第二章:总体程序设计2.1整体组装设计原理图系统的整体组装设计有密码输入模块、密码控制模块、密码显示模块三部分组成,故如(图2.1)所示。图2.1(电子密码锁整体组装原理图)SOPC/EDA课程设计:电子密码锁设计-5-2.2顶层模块程序调用2.2.1程序部分LIBRARYieee;USEieee.std_logic_1164.all;LIBRARYwork;ENTITYstringISPORT(CLK:INSTD_LOGIC;KEY:INSTD_LOGIC_VECTOR(2DOWNTO0);MIMAIN:OUTSTD_LOGIC;SETIN:OUTSTD_LOGIC;OLD:OUTSTD_LOGIC;ENLOCK:OUTSTD_LOGIC;CRS:OUTSTD_LOGIC_VECTOR(1DOWNTO0);SEG_SM1:OUTSTD_LOGIC_VECTOR(6DOWNTO0);SEG_SM2:OUTSTD_LOGIC_VECTOR(6DOWNTO0);SEG_SM3:OUTSTD_LOGIC_VECTOR(6DOWNTO0);SEG_SM4:OUTSTD_LOGIC_VECTOR(6DOWNTO0);SEL:OUTSTD_LOGIC_VECTOR(3DOWNTO0));ENDstring;ARCHITECTUREbdf_typeOFstringISCOMPONENTymPORT(DATA_BCD:INSTD_LOGIC_VECTOR(3DOWNTO0);DOUT7:OUTSTD_LOGIC_VECTOR(6DOWNTO0));ENDCOMPONENT;COMPONENTsrPORT(CLK_1K:INSTD_LOGIC;KEY_IN:INSTD_LOGIC_VECTOR(2DOWNTO0);DATA_M:OUTSTD_LOGIC;-6-DATA_B:OUTSTD_LOGIC;CQD:OUTSTD_LOGIC;CSR:OUTSTD_LOGIC_VECTOR(1DOWNTO0);DATA_F:OUTSTD_LOGIC_VECTOR(3DOWNTO0);DATA_N:OUTSTD_LOGIC_VECTOR(3DOWNTO0);KSEL:OUTSTD_LOGIC_VECTOR(3DOWNTO0));ENDCOMPONENT;COMPONENTctrlPORT(DATA_M:INSTD_LOGIC;DATA_B:INSTD_LOGIC;CQD:INSTD_LOGIC;DATA_F:INSTD_LOGIC_VECTOR(3DOWNTO0);DATA_N:INSTD_LOGIC_VECTOR(3DOWNTO0);MIMAIN:OUTSTD_LOGIC;SETIN:OUTSTD_LOGIC;OLD:OUTSTD_LOGIC;ENLOCK:OUTSTD_LOGIC;DATA_BCD:OUTSTD_LOGIC_VECTOR(15DOWNTO0));ENDCOMPONENT;SIGNALDATA_BCD:STD_LOGIC_VECTOR(15DOWNTO0);SIGNALSYNTHESIZED_WIRE_0:STD_LOGIC;SIGNALSYNTHESIZED_WIRE_1:STD_LOGIC;SIGNALSYNTHESIZED_WIRE_2:STD_LOGIC;SIGNALSYNTHESIZED_WIRE_3:STD_LOGIC_VECTOR(3DOWNTO0);SIGNALSYNTHESIZED_WIRE_4:STD_LOGIC_VECTOR(3DOWNTO0);BEGINb2v_inst1:ymPORTMAP(DATA_BCD=DATA_BCD(3DOWNTO0),DOUT7=SEG_SM1);b2v_inst2:srPORTMAP(CLK_1K=CLK,KEY_IN=KEY,DATA_M=SYNTHESIZED_WIRE_0,SOPC/EDA课程设计:电子密码锁设计-7-DATA_B=SYNTHESIZED_WIRE_1,CQD=SYNTHESIZED_WIRE_2,CSR=CRS,DATA_F=SYNTHESIZED_WIRE_3,DATA_N=SYNTHESIZED_WIRE_4,KSEL=SEL);b2v_inst3:ctrlPORTMAP(DATA_M=SYNTHESIZED_WIRE_0,DATA_B=SYNTHESIZED_WIRE_1,CQD=SYNTHESIZED_WIRE_2,DATA_F=SYNTHESIZED_WIRE_3,DATA_N=SYNTHESIZED_WIRE_4,MIMAIN=MIMAIN,SETIN=SETIN,OLD=OLD,ENLOCK=ENLOCK,DATA_BCD=DATA_BCD);b2v_inst4:ymPORTMAP(DATA_BCD=DATA_BCD(15DOWNTO12),DOUT7=SEG_SM4);b2v_inst5:ymPORTMAP(DATA_BCD=DATA_BCD(11DOWNTO8),DOUT7=SEG_SM3);b2v_inst6:ymPORTMAP(DATA_BCD=DATA_BCD(7DOWNTO4),DOUT7=SEG_SM2);ENDbdf_type;2.2.2整体原理文件-8-图2.2顶层模块原理图2.2.3顶层模块仿真图2.3顶层文件仿真SOPC/EDA课程设计:电子密码锁设计-9-第三章:单元模块程序设计本章节介绍的是单独模块的程序、原理图、仿真以及功能说明,共有三个模块,分别是电子密码锁输入模块、电子密码锁控制模块以及显示模块。3.1输入模块1.时序产生电路本时序产生电路中使用了三种不同频率的工作脉冲波形:系统时钟脉冲(它是系统内部所有时钟脉冲的源头,且其频率最高)、弹跳消除取样信
本文标题:电子密码锁课程设计分析解析
链接地址:https://www.777doc.com/doc-3848124 .html