亚洲中字慕日产2020,大陆极品少妇内射AAAAAA,无码av大香线蕉伊人久久,久久精品国产亚洲av麻豆网站

資訊專欄INFORMATION COLUMN

數(shù)電實(shí)驗(yàn):密碼保險(xiǎn)箱

trigkit4 / 4045人閱讀

摘要:設(shè)計(jì)理念通過撥動開關(guān)輸入由四位二進(jìn)制表示的密碼,然后按鍵確認(rèn)輸入并校驗(yàn)。如果校驗(yàn)失敗,則數(shù)碼不亮,全亮,啟動報(bào)警,直到輸入正確密碼并再次確認(rèn)校驗(yàn)成功后,滅,數(shù)碼顯示提示開鎖。

1.設(shè)計(jì)理念

通過撥動開關(guān)輸入由四位二進(jìn)制表示的密碼,然后按鍵確認(rèn)輸入并校驗(yàn)。
如果校驗(yàn)通過,則led不亮,數(shù)碼led顯示0提示開鎖。
如果校驗(yàn)失敗,則數(shù)碼led不亮,led全亮,啟動報(bào)警,直到輸入正確密碼并再次確認(rèn)校驗(yàn)成功后,led滅,數(shù)碼led顯示0提示開鎖。

安全性:

  • 開鎖成功或失敗提示明顯;
  • 密碼組合一共16種供選擇。但一旦輸入錯誤便進(jìn)入報(bào)警模式;
  • 需要確認(rèn)輸入,避免意外誤觸;

視頻見附件。

2.代碼
(1) my_codelock.v

module my_codelock(seg_led,										//數(shù)碼							led_state,key_confirm,sw_input,		//led,開關(guān),按鍵							clk,rst										//消抖需要的輸入							);	input key_confirm;												//按鍵=確認(rèn)	input [3:0] sw_input;											//撥動開關(guān)=輸入密碼	output [7:0] led_state;	reg [7:0] led_state;												//led表示狀態(tài)	reg [8:0] seg_led;	output [8:0] seg_led;											//數(shù)碼管提示正確打開				input clk,rst;			always@(*)begin	seg_led=9"h00;	if (key_confirm==0)begin										//當(dāng)按下確認(rèn)開始校對	if (sw_input==4"b0101) begin		led_state=8"b1111_1111;										//如果密碼正確,那就不亮led亮數(shù)碼板		seg_led=9"h3f;												end		else begin		led_state=8"b0000_0000;		end	end	end	 debounce  u1 (                                                      .clk (clk),                       .rst (rst),                       .key (key_confirm),                       .key_pulse ()                       );	endmodule

(1) debounce.v

module debounce (clk,rst,key,key_pulse);         parameter       N  =  1;                      //要消除的按鍵的數(shù)量 	input             clk;        input             rst;        input 	[N-1:0]   key;                        //輸入的按鍵						output  [N-1:0]   key_pulse;                  //按鍵動作產(chǎn)生的脈沖	         reg     [N-1:0]   key_rst_pre;                //定義一個寄存器型變量存儲上一個觸發(fā)時(shí)的按鍵值        reg     [N-1:0]   key_rst;                    //定義一個寄存器變量儲存儲當(dāng)前時(shí)刻觸發(fā)的按鍵值         wire    [N-1:0]   key_edge;                   //檢測到按鍵由高到低變化是產(chǎn)生一個高脈沖         //利用非阻塞賦值特點(diǎn),將兩個時(shí)鐘觸發(fā)時(shí)按鍵狀態(tài)存儲在兩個寄存器變量中        always @(posedge clk  or  negedge rst)          begin             if (!rst) begin                 key_rst <= {N{1"b1}};                //初始化時(shí)給key_rst賦值全為1,{}中表示N個1                 key_rst_pre <= {N{1"b1}};             end             else begin                 key_rst <= key;                     //第一個時(shí)鐘上升沿觸發(fā)之后key的值賦給key_rst,同時(shí)key_rst的值賦給key_rst_pre                 key_rst_pre <= key_rst;             //非阻塞賦值。相當(dāng)于經(jīng)過兩個時(shí)鐘觸發(fā),key_rst存儲的是當(dāng)前時(shí)刻key的值,key_rst_pre存儲的是前一個時(shí)鐘的key的值             end               end         assign  key_edge = key_rst_pre & (~key_rst);//脈沖邊沿檢測。當(dāng)key檢測到下降沿時(shí),key_edge產(chǎn)生一個時(shí)鐘周期的高電平         reg	[17:0]	  cnt;                       //產(chǎn)生延時(shí)所用的計(jì)數(shù)器,系統(tǒng)時(shí)鐘12MHz,要延時(shí)20ms左右時(shí)間,至少需要18位計(jì)數(shù)器              //產(chǎn)生20ms延時(shí),當(dāng)檢測到key_edge有效是計(jì)數(shù)器清零開始計(jì)數(shù)        always @(posedge clk or negedge rst)           begin             if(!rst)                cnt <= 18"h0;             else if(key_edge)                cnt <= 18"h0;             else                cnt <= cnt + 1"h1;             end           reg     [N-1:0]   key_sec_pre;                //延時(shí)后檢測電平寄存器變量        reg     [N-1:0]   key_sec;                              //延時(shí)后檢測key,如果按鍵狀態(tài)變低產(chǎn)生一個時(shí)鐘的高脈沖。如果按鍵狀態(tài)是高的話說明按鍵無效        always @(posedge clk  or  negedge rst)          begin             if (!rst)                  key_sec <= {N{1"b1}};                             else if (cnt==18"h3ffff)                 key_sec <= key;            end       always @(posedge clk  or  negedge rst)          begin             if (!rst)                 key_sec_pre <= {N{1"b1}};             else                                    key_sec_pre <= key_sec;                      end             assign  key_pulse = key_sec_pre & (~key_sec);      endmodule

3.RTL電路

文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請注明本文地址:http://www.ezyhdfw.cn/yun/121775.html

相關(guān)文章

  • 區(qū)塊鏈從根本上重新塑造人與人之間,人與物質(zhì)世界之間的關(guān)系

    摘要:區(qū)塊鏈?zhǔn)擒浖_源運(yùn)動所結(jié)出的果子。原因是區(qū)塊鏈創(chuàng)造的信任是基于代碼產(chǎn)生的。 上一講中,我們深入探討了區(qū)塊鏈對一些基本問題的答案,包括對時(shí)間的答案、對空間的答案以及對能量的答案。在這一篇文章中,我們將從區(qū)塊鏈作為基本工具的工具論方面切入。這個方面包括了它是怎樣看待這個世界的:它使用了哪些工具,以及它使用了哪些方法?構(gòu)造了哪些全新的博弈環(huán)境并形成了哪些新的博弈均衡態(tài)?這些方法也許和人們過去...

    Shisui 評論0 收藏0
  • 區(qū)塊鏈正在重塑法律(上)

    摘要:秘猿科技法務(wù)總監(jiān)錢靖受邀參加北京大學(xué)數(shù)字金融研究中心舉辦的數(shù)字金融第十講,作為主講嘉賓就區(qū)塊鏈正在重塑法律做了主題演講。而區(qū)塊鏈在很大程度上可以幫助解決這些問題。第三個方面涉及到區(qū)塊鏈對每個部門法的影響。 showImg(https://segmentfault.com/img/bVboMSK?w=1280&h=543); 秘猿科技法務(wù)總監(jiān)錢靖受邀參加北京大學(xué)數(shù)字金融研究中心舉辦的數(shù)字...

    wendux 評論0 收藏0
  • 數(shù)據(jù)可用不可見!揭秘螞蟻區(qū)塊鏈摩斯安全計(jì)算平臺

    摘要:安全透明輕量的螞蟻區(qū)塊鏈摩斯安全計(jì)算基礎(chǔ)設(shè)施螞蟻摩斯依托螞蟻金融科技平臺,結(jié)合區(qū)塊鏈技術(shù),將復(fù)雜的隱私保護(hù)與密碼學(xué)算法透明化產(chǎn)品化,提供安全發(fā)布安全模型安全統(tǒng)計(jì)安全查詢安全腳本等核心功能。 摘要:?螞蟻區(qū)塊鏈摩斯安全計(jì)算平臺針對數(shù)據(jù)安全信任、個人隱私保護(hù)以及數(shù)據(jù)基礎(chǔ)設(shè)施不足等痛點(diǎn),秉持?jǐn)?shù)據(jù)可用不可見和將計(jì)算移動到數(shù)據(jù)端的原則,借助區(qū)塊鏈、密碼學(xué)、隱私保護(hù)、安全多方計(jì)算、可信計(jì)算等前沿...

    zhisheng 評論0 收藏0
  • 9塊錢部署一個小程序

    摘要:第二步微信開發(fā)工具你可以下微信的,了解小程序的前端和后端的開發(fā)結(jié)構(gòu)。第三步微信的后臺處理購買主機(jī)建站會獲得一個可用的無備案的域名。 小程序制作和部署從本質(zhì)上是和其他的網(wǎng)站是一樣的,需要域名、服務(wù)器空間和數(shù)據(jù)庫。域名就是你們家的地址,服務(wù)器空間就是你們家房子,數(shù)據(jù)庫就是你們家的保險(xiǎn)柜。 但是小程序和網(wǎng)站又有不同,小程序的前端部分是需要通過微信開發(fā)工具上傳到微信的服務(wù)器上,就是說你們家的...

    wuyangchun 評論0 收藏0

發(fā)表評論

0條評論

閱讀需要支付1元查看
<