密码器的控制与设计Word下载.docx
- 文档编号:22272921
- 上传时间:2023-02-03
- 格式:DOCX
- 页数:20
- 大小:314.21KB
密码器的控制与设计Word下载.docx
《密码器的控制与设计Word下载.docx》由会员分享,可在线阅读,更多相关《密码器的控制与设计Word下载.docx(20页珍藏版)》请在冰豆网上搜索。
按下此键时将目前的数字设定成新的密码。
4.激活电锁:
按下此键可将密码锁上锁。
5.解除电锁:
按下此键会检查输入的密码是否正确,密码正确即开锁。
所需仪器设备:
个人电脑,电子箱
成果验收形式:
做出实物为准
参考文献:
《数字电子技术基础》(第五版)
《EDA技术与实验》
时间
安排
第15周:
周1---周3:
立题、论证方案设计
周4---周5:
预答辩
第16周:
仿真实验周4---周5:
验收答辩
胡辉教研室主任:
王俊红
2011年12月20日
内容摘要
本报告通过对目前世界上正在使用的永久性载人空间站之间或与运载飞行器之间的交会对接技术的对比研究,提出了……
索引关键词:
空间技术飞行器空间站交会对接
目录
一概述
二方案设计与论证
三总原理图及元器件清单
四安装与调试
(一般分静态调试与动态调试两大内容)
五性能测试与分析
(要围绕设计要求中的各项指标进行)
六结论
七参考文献
一、概述
电子密码锁在生活中十分常见,在这我将设计一个具有较低成本的电子密码锁,本文讲述了我整个设计过程及收获。
讲述了电子密码锁的的工作原理以及各个模块的功能,并讲述了所有部分的设计思路,对各部分电路方案的选择、元器件的筛选、以及对它们的调试、对波形图的分析,到最后的总体图的分析。
二、方案设计与论证
(1)具有密码输入功能,密码最多为6位;
(2)设置退格键,以便删除输入错误的密码;
(3)在输入密码时数码管上只显示8,并根据输入位数依次横移;
(4)设置确认键,当确认键按下后,判断输入密码是否正确;
(5)当输入密码正确时,点亮发光二极管;
当输入密码不正确时,发光二极管不亮并且蜂鸣器报警,重新输入,当三次密码输入不正确时,系统应锁定键盘10s
三、总原理图及元器件清单
1.总原理图
四安装与调试
五、性能测试与分析
程序包括六个逻辑元件,分别为:
数字按键输入、控制功能按键输入、时钟分频器、处理核心、输出处理和七段译码器。
3.1数字功能输入
3.1.1功能介绍
读取数字键0~9。
高电平表示按键未按下,低电平表示按键按下。
按照0~9顺序读取,只能输出1位数字。
输出4位二进制代码,“0000”~“1001”表示0~9,用“1010”表示无输入。
3.1.2数字输入
1.建立项目文件
2.建立设计文件
在管理窗口中选择File\New命令,建立文本编辑区,并在FileName文本框中输入shuzishuru.vhd,存盘。
3.编辑程序
在文本编辑区内,输入程序,程序如下:
libraryieee;
useieee.std_logic_1164.all;
entityshuzishuruis
port(numin:
INstd_logic_vector(9downto0);
numstate,clk:
INstd_logic;
numout:
OUTstd_logic_vector(3downto0));
endshuzishuru;
architectureEDAofshuzishuruis
signalstate:
std_logic;
signalmem:
std_logic_vector(9downto0);
begin
process(clk)
ifclk'
eventandclk='
1'
then
ifstate/=numstatethen
ifmem/=numinthen
casenuminis
when"
1111111110"
=>
numout<
="
0000"
;
1111111101"
0001"
1111111011"
0010"
1111110111"
0011"
1111101111"
0100"
1111011111"
0101"
1110111111"
0110"
1101111111"
0111"
1011111111"
1000"
0111111111"
1001"
whenothers=>
1010"
endcase;
state<
=numstate;
elsenumout<
endif;
mem<
=numin;
endprocess;
endEDA;
4.保存文件并检查语法错误
在管理窗口中选择File/Project/Save&
Check命令,可将变异的文件存盘并检查语法错误,如果有错误则返回编辑区内修改。
5.建立默认符号
在管理窗口中选择File/CreateDefaultSymbol命令,建立一个符号文件供顶层图形设计文件调用。
3.2控制功能输入
3.2.1功能介绍
读取控制功能按键-清除按键,修改密码,锁定,解锁。
按照“清除按键,修改密码,锁定,解锁”顺序读取,只能输出一位控制信号。
输出3位二进制代码,“001”~“100”表示“清除按键,修改密码,锁定,解锁”,用“000”表示无输入。
3.2.2程序输入
在管理窗口中选择File\New命令,建立文本编辑区,并在FileName文本框中输入gongnengshuru.vhd,存盘。
entitygongnengshuruis
port(conin:
INstd_logic_vector(3downto0);
constate,clk:
conout:
OUTstd_logic_vector(2downto0));
endgongnengshuru;
architectureEDAofgongnengshuruis
std_logic_vector(3downto0);
ifconstate/=statethen
=constate;
ifmem/=coninthen
caseconinis
1110"
conout<
001"
--numberclear
1101"
010"
--changecode
1011"
011"
--lockstart
100"
--unlock
000"
=conin;
elseconout<
3.3时钟分频器
3.3.1功能介绍
十分频器,将频率将低以利用。
3.3.2程序输入
在管理窗口中选择File\New命令,建立文本编辑区,并在FileName文本框中输入fenpinqi.vhd,存盘。
useieee.std_logic_unsigned.all;
entityfenpinqiis
port(clkin:
instd_logic;
clkout:
outstd_logic);
endfenpinqi;
architectureEDAoffenpinqiis
signalfenp:
integerrange0to9;
signalclk:
process(clkin)
ifclkin'
eventandclkin='
fenp<
=fenp+1;
iffenp=9then
ifclk='
thenclk<
='
0'
elseclk<
clkout<
=clk;
3.4处理核心
3.4.1功能介绍
处理核心,根据输入(数字输入以及控制功能输入)改变存储器状态、数码管显示以及LED灯显示。
3.4.2程序输入
在管理窗口中选择File\New命令,建立文本编辑区,并在FileName文本框中输入mimachuli.vhd,存盘。
useieee.std_logic_1164.all;
entitymimachuliis
port(numin:
instd_logic_vector(3downto0);
conin:
instd_logic_vector(2downto0);
clk:
dataa,datab,datac,datad:
outstd_logic_vector(3downto0);
ledr,ledg,alm,numout,conout:
endmimachuli;
architectureEDAofmimachuliis
typelockstateis(unlock,locked);
signalnuma,numb,numc,numd,codea,codeb,codec,coded:
signalnumstate,constate:
signallocksta:
lockstate;
begin
process(clk,numin,conin)
ifclk'
ifnumin/="
numd<
=numc;
numc<
=numb;
numb<
=numa;
numa<
endif;
ifconin/="
ifconin="
elsifconin="
iflocksta/=lockedthen
codea<
codeb<
codec<
coded<
=numd;
locksta<
=locked;
iflocksta=lockedthen
if(numa=codeaandnumb=codebandnumc=codecandnumd=coded)
thenlocksta<
=unlock;
alm<
elsealm<
ledr<
ledg<
else
dataa<
datab<
datac<
datad<
ifnumstate='
thennumstate<
elsenumstate<
ifconstate='
thenconstate<
elseconstate<
endprocess;
endEDA;
5.建立默认符
3.5报警处理
3.5.1功能介绍
当密码输入错误时,红灯亮,并且蜂鸣器发生响动。
3.5.2程序输入
在管理窗口中选择File\New命令,建立文本编辑区,并在FileName文本框中输入baojing.vhd,存盘。
entitybaojingis
port(
alm,clr:
speak:
outstd_logic;
lamp:
outstd_logic
);
endbaojing;
architectureEDAofbaojingis
signalcount1:
std_logic_vector(1downto0);
speaker:
process(clk,alm,clr)
if(clr='
)then
speak<
lamp<
elsif(alm='
)then
=count1
(1);
if(count1>
10"
count1<
00"
=count1+1;
3.6输出处理
3.6.1功能介绍
根据密码处理提供的数码管数据刷新显示数字,需要配合七段译器。
3.6.2程序输入
在管理窗口中选择File\New命令,建立文本编辑区,并在FileName文本框中输入shuchu.vhd,存盘。
entityshuchuis
port(dataa,datab,datac,datad:
clk:
dataout:
outsel:
outstd_logic_vector(1downto0));
endshuchu;
architectureEDAofshuchuis
signaltimer:
iftimer="
dataout<
=dataa;
outsel<
timer<
01"
elsiftimer="
=datab;
=datac;
11"
else
=datad;
3.7七段译码器
3.7.1功能介绍
把位2进制数翻译成数码管代码。
3.7.2程序输入
在管理窗口中选择File\New命令,建立文本编辑区,并在FileName文本框中输入LED7.vhd,存盘。
entityLED7is
port(datain:
OUTstd_logic_vector(6downto0));
endLED7;
architectureEDAofLED7is
process(datain)
casedatainis
dataout<
1111110"
0110000"
1101101"
1111001"
0110011"
1011011"
1011111"
1110000"
1111111"
1111011"
0000000"
六、结论
可以实现密码的锁存于密码的重置,若输入错误密码,则蜂鸣器报警
七、心得体会
通过此次课设更加理解了vhdl语言的使用,最重要的是会使用内部的虚拟信号,使之更加灵活的利用vhdl语言的使用,vhdl的灵活使用更加扩展了
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 密码 控制 设计
![提示](https://static.bdocx.com/images/bang_tan.gif)