收藏 分享(赏)

基于fpga的数字密码锁(使用矩阵键盘 ).doc

上传人:精品资料 文档编号:10688214 上传时间:2019-12-28 格式:DOC 页数:9 大小:46KB
下载 相关 举报
基于fpga的数字密码锁(使用矩阵键盘 ).doc_第1页
第1页 / 共9页
基于fpga的数字密码锁(使用矩阵键盘 ).doc_第2页
第2页 / 共9页
基于fpga的数字密码锁(使用矩阵键盘 ).doc_第3页
第3页 / 共9页
基于fpga的数字密码锁(使用矩阵键盘 ).doc_第4页
第4页 / 共9页
基于fpga的数字密码锁(使用矩阵键盘 ).doc_第5页
第5页 / 共9页
点击查看更多>>
资源描述

1、基于 FPGA 数字密码锁 板子使用的是 DE2顶层 topmodule lock(reset,clk,row,col,mm0,mm1,mm2,mm3,led1,led2,led3,set_flog);input clk,reset;input 3:0row;output wire 3:0 col;output wire 6:0 mm0,mm1,mm2,mm3;output reg led1, led2,led3;wire 3:0key_value;reg 3:0 temp_key;reg 3:0 m0,m1,m2,m3;reg 3:0 m_0,m_1,m_2,m_3;reg 5:0 stat

2、e;reg 2:0 wei;wire key_valid;reg 1:0count_wrong;output reg set_flog;parameter valid =6b000000,set =6b000001,collection_mm =6b000010,cmd =6b000100,collection =6b001000,wrong =6b010000,correct =6b100000,die_lock =6b000011,lock =6b000111;always (posedge clk or negedge reset)begin if(!reset)begin state=

3、0count=0;endelse count=count + 1b1;always (posedge clk_500khz or negedge reset)beginif(!reset)begin col=0;state=0;row_reg=0;col_reg=0;endelsebegincase(state)0:begin col=0;key_flag=0;if(row3:0!=4b1111) begin state=1;col3:0=4b1110;endelse state=0;end1: if(row3:0!=4b1111) state=5;else begin state=2;col

4、=4b1101;end2: if(row3:0!=4b1111) state=5;else begin state=3;col=4b1011;end3: if(row3:0!=4b1111) state=5;else begin state=4;col=4b0111;end4: if(row3:0!=4b1111) state=5;else state=0;5: if(row3:0!=4b1111) begin col_reg=col;row_reg=row;state=5;key_flag=1;endelse state =0;endcaseendendalways(clk or col_r

5、eg or row_reg or key_value)begin if(!reset)key_value=0;else if(key_flag=1b1)begin case(col_reg,row_reg)8b1110_1110:key_value=1;8b1110_1101:key_value=2;8b1110_1011:key_value=3;8b1110_0111:key_value=10;/a8b1101_1110:key_value=4;8b1101_1101:key_value=5; 8b1101_1011:key_value=6; 8b1101_0111:key_value=11

6、;/b8b1011_1110:key_value=7;8b1011_1101:key_value=8;8b1011_1011:key_value=9;8b1011_0111:key_value=12;/c8b0111_1110:key_value=15;/*8b0111_1101:key_value=0;8b0111_1011:key_value=14;/#8b0111_0111:key_value=13;/d endcaseendendendmodule显示模块module display(clk,mm,wei0,wei1,wei2,wei3);input 15:0mm;input clk;

7、output reg 6:0 wei0,wei1,wei2,wei3;always (clk)begin case(mm3:0)4b0000:wei0=7b 1000000; 4b0001:wei0=7b 1111001; 4b0010:wei0=7b 0100100; 4b0011:wei0=7b 0110000; 4b0100:wei0=7b 0011001; 4b0101:wei0=7b 0010010; 4b0110:wei0=7b 0000010; 4b0111:wei0=7b 1111000; 4b1000:wei0=7b 0000000; 4b1001:wei0=7b 00110

8、00;4b1010:wei0=7b 0001000; 4b1011:wei0=7b 0000011; 4b1100:wei0=7b 1000110; 4b1101:wei0=7b 0100001; 4b1110:wei0=7b 0000110; 4b1111:wei0=7b 1000000; /4b1111:wei0=7b 0001110;endcase case(mm7:4)4b0000:wei1=7b 1000000; 4b0001:wei1=7b 1111001; 4b0010:wei1=7b 0100100; 4b0011:wei1=7b 0110000; 4b0100:wei1=7b

9、 0011001; 4b0101:wei1=7b 0010010; 4b0110:wei1=7b 0000010; 4b0111:wei1=7b 1111000; 4b1000:wei1=7b 0000000; 4b1001:wei1=7b 0011000;4b1010:wei1=7b 0001000; 4b1011:wei1=7b 0000011; 4b1100:wei1=7b 1000110; 4b1101:wei1=7b 0100001; 4b1110:wei1=7b 0000110; 4b1111:wei1=7b 1000000; /4b1111:wei1=7b 0001110; en

10、dcasecase(mm11:8)4b0000:wei2=7b 1000000; 4b0001:wei2=7b 1111001; 4b0010:wei2=7b 0100100; 4b0011:wei2=7b 0110000; 4b0100:wei2=7b 0011001; 4b0101:wei2=7b 0010010; 4b0110:wei2=7b 0000010; 4b0111:wei2=7b 1111000; 4b1000:wei2=7b 0000000; 4b1001:wei2=7b 0011000;4b1010:wei2=7b 0001000; 4b1011:wei2=7b 00000

11、11; 4b1100:wei2=7b 1000110; 4b1101:wei2=7b 0100001; 4b1110:wei2=7b 0000110; 4b1111:wei2=7b 1000000; /4b1111:wei2=7b 0001110; endcasecase(mm15:12)4b0000:wei3=7b 1000000; 4b0001:wei3=7b 1111001; 4b0010:wei3=7b 0100100; 4b0011:wei3=7b 0110000; 4b0100:wei3=7b 0011001; 4b0101:wei3=7b 0010010; 4b0110:wei3=7b 0000010; 4b0111:wei3=7b 1111000; 4b1000:wei3=7b 0000000; 4b1001:wei3=7b 0011000;4b1010:wei3=7b 0001000; 4b1011:wei3=7b 0000011; 4b1100:wei3=7b 1000110; 4b1101:wei3=7b 0100001; 4b1110:wei3=7b 0000110; 4b1111:wei3=7b 1000000; /4b1111:wei3=7b 0001110; endcaseendendmodule

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 企业管理 > 管理学资料

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报