<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>

新聞中心

EEPW首頁(yè) > 嵌入式系統 > 設計應用 > 實(shí)驗21:智力競賽搶答器

實(shí)驗21:智力競賽搶答器

作者: 時(shí)間:2023-10-13 來(lái)源:電子森林 收藏

本實(shí)驗的任務(wù)是設計一個(gè)智力競賽,帶復位和主持人控制功能。

本文引用地址:http://dyxdggzs.com/article/202310/451512.htm
  1. 一共4組選手,用開(kāi)關(guān)k1,k2,k3,k4表示
  2. 主持人復位開(kāi)始搶答,獲得搶答的選手顯示對應led,答題時(shí)間超過(guò)30秒報警
  3. 每位選手初始分數5分(RESET復位),主持人控制加分減分按鍵,每次增加或減少1分(最多9分),答題選手分數顯示在數碼管

根據搶答器的功能,采用模塊化設計,如下

搶答判斷模塊(judge):根據開(kāi)關(guān)的輸入判斷搶答的選手信號,通過(guò)輸出的LED顯示搶答選手;內部定義block標志信號用來(lái)鎖定搶答完成;判斷搶答之后答題超過(guò)30秒產(chǎn)生報警信號。
分數模塊(score):復位信號單獨復位所有選手分數;加減按鍵消抖后用來(lái)增加減少分數。
顯示模塊(dseg):當前搶答的選手分數顯示在數碼管上。
分頻模塊(divide):分頻產(chǎn)生計時(shí)時(shí)鐘信號。

程序清單answer.v

 module answer
 (
 input wire clk,rst,             //時(shí)鐘和復位信號
 input wire k1,k2,k3,k4,         //選手開(kāi)關(guān)
 input wire reset,add,sub,       //復位分數,加分,減分按鍵
 output wire led1,led2,led3,led4,//選手對應
 ledoutput wire buzz,               //報警信號
 output wire [8:0] segment_led   //數碼管信號
 );
 wire clk1h;
 divide #(					//產(chǎn)生1秒時(shí)鐘信號
 .WIDTH(24),
 .N(12000000)
 ) u1(.clk(clk),
 .rst_n(rst),
 .clkout(clk1h));judge u2                    //判斷搶答選手,答題超時(shí)報警
 (
 .clk(clk1h),					
 .k1(k1),
 .k2(k2),
 .k3(k3),
 .k4(k4),			
 .start(rst),				
 .out1(led1),
 .out2(led2),
 .out3(led3),
 .out4(led4),	
 .buzz(buzz)					
 );
 wire [3:0] score1,score2,score3,score4;
 score u3                      //主持人控制答題選手分數
 (
 .clk(clk),.rst(rst),
 .add(add),.sub(sub),
 .reset(reset),
 .c1(led1),.c2(led2),.c3(led3),.c4(led4),
 .score1(score1),.score2(score2),.score3(score3),.score4(score4)
 );
 dseg u4                       //數碼管驅動(dòng)顯示答題選手分數
 (
 .rst(rst),
 .c1(led1),.c2(led2),.c3(led3),.c4(led4),
 .score1(score1),.score2(score2),.score3(score3),.score4(score4),
 .segment_led(segment_led)
 );
 endmodule

頂層文件一共調用了4個(gè)模塊judge.v、score.v、dseg.v、divide.v。所有的子模塊源碼請參考前例實(shí)驗的工程文件

  1. 打開(kāi),建立工程。
  2. 新建設計文件,并鍵入設計代碼。
  3. 根據邏輯綜合并分配管腳,在本實(shí)驗中引腳分配如下:key[1:4] —
     M7,M8,M9,M10;clk       ---       C1;rst      ---       L14      ;     reset     ---       N14;add      ---      M13;sub      ---       M14;buzz      ---      P9;led[1:4]  ---      N13~M11;segment[8:0] ---     A12~C12

    - 構建并輸出編程文件,燒寫(xiě)至的Flash之中。

  4. 觀(guān)察輸出結果。

當程序下載成功時(shí),按下rst復位,表示搶答開(kāi)始。由于開(kāi)發(fā)板上的開(kāi)關(guān)有限,所以采用四個(gè)撥碼開(kāi)關(guān)分別表示4個(gè)搶答選手。當判斷撥碼開(kāi)關(guān)狀態(tài)后,同時(shí)該選手對應的led點(diǎn)亮。
按下reset復位鍵,搶答完成后在數碼管上顯示選手分數,可以通過(guò)加減分按鍵修改分數。



關(guān)鍵詞: 搶答器 FPGA Lattice Diamond Verilog HDL

評論


相關(guān)推薦

技術(shù)專(zhuān)區

關(guān)閉
国产精品自在自线亚洲|国产精品无圣光一区二区|国产日产欧洲无码视频|久久久一本精品99久久K精品66|欧美人与动牲交片免费播放
<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>