国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

FPGA小腳丫開發(fā)板實(shí)現(xiàn)數(shù)字時(shí)鐘,具備調(diào)時(shí)、整點(diǎn)報(bào)時(shí)、鬧鐘功能(含verilog代碼)

這篇具有很好參考價(jià)值的文章主要介紹了FPGA小腳丫開發(fā)板實(shí)現(xiàn)數(shù)字時(shí)鐘,具備調(diào)時(shí)、整點(diǎn)報(bào)時(shí)、鬧鐘功能(含verilog代碼)。希望對大家有所幫助。如果存在錯(cuò)誤或未考慮完全的地方,請大家不吝賜教,您也可以點(diǎn)擊"舉報(bào)違法"按鈕提交疑問。

一、實(shí)現(xiàn)功能

1. 能正常完成時(shí)鐘的時(shí)、分、秒走時(shí);

2. 使用LED閃爍或者改變顏色等方式實(shí)現(xiàn)秒的指示,要求閃爍頻率或者顏色切換頻率為1Hz;

3. 使用兩位七段數(shù)碼管顯示時(shí)和分,其切換方式為:默認(rèn)顯示“分鐘”,按住K4鍵顯示“小時(shí)”,按下K3顯示秒針;

4. 關(guān)上開關(guān)sw2,使用K1K2鍵調(diào)整時(shí)間,分別為“+”和“-”,則K1K2調(diào)整“分鐘”,當(dāng)K4按下,則K1K2調(diào)整“小時(shí)”,當(dāng)K3按下,則K1K2調(diào)整“秒針”;

5. 整點(diǎn)報(bào)時(shí):當(dāng)時(shí)間到達(dá)每個(gè)整點(diǎn),則全彩LED以某種固定顏色按1Hz頻率閃爍相應(yīng)次數(shù)(按24小時(shí)制);

6. 鬧鐘設(shè)置,將sw3開關(guān)設(shè)置為1,開始設(shè)置固定時(shí)鐘和分鐘,當(dāng)時(shí)間計(jì)時(shí)到達(dá)時(shí),八個(gè)led燈閃爍一分鐘;

二、實(shí)驗(yàn)

1.整體結(jié)構(gòu)

FPGA小腳丫開發(fā)板實(shí)現(xiàn)數(shù)字時(shí)鐘,具備調(diào)時(shí)、整點(diǎn)報(bào)時(shí)、鬧鐘功能(含verilog代碼)

2.主函數(shù)?

// Module Function:時(shí)鐘設(shè)計(jì)
?
module time_clock (clk,rst,seg_led_1,seg_led_2,led,key,sw2,sw3,led_rgb1,led_rgb2);
?
?? ?input clk,rst;
?? ?input [3:0]key;
? ? input sw2,sw3;
?? ?output reg [8:0] seg_led_1;
?? ?output reg [8:0] seg_led_2;?? ?

? ? output reg [7:0] led;
? ? output reg [2:0] led_rgb1=3'b 111;
? ? output reg [2:0] led_rgb2=3'b 111;
? ??
? ? ? ??
? ? ? ? reg ? [3:0] cnt1 ; ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? //定義了一個(gè)4位的計(jì)數(shù)器
? ? ? ? reg ? [3:0] count1;
? ? ? ? reg ? [3:0] count_set_1;
? ? ? ? reg ? [3:0] cnt2 ;
? ? ? ? reg ? [3:0] count2;
? ? ? ? reg ? [3:0] count_set_2;
? ? ? ? reg ? [3:0] cnt3 ; ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? //定義了一個(gè)4位的計(jì)數(shù)器
? ? ? ? reg ? [3:0] count3;
? ? ? ? reg ? [3:0] count_set_3;
? ? ? ? reg ? [3:0] cnt4 ;
? ? ? ? reg ? [3:0] count4;
? ? ? ? reg ? [3:0] count_set_4;
? ? ? ? reg ? [3:0] cnt5 ; ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? //定義了一個(gè)4位的計(jì)數(shù)器
? ? ? ? reg ? [3:0] count5;
? ? ? ? reg ? [3:0] count_set_5;
? ? ? ? reg ? [3:0] cnt6 ;
? ? ? ? reg ? [3:0] count6;
? ? ? ? reg ? [3:0] count_set_6;
? ? ? ? reg ? [30:0]count_1s;
? ? ? ? reg ? [30:0]count_05s;
? ? ? ? reg [15 : 0] count;
? ? ? ? reg [15 : 0] count0;
? ? ? ? reg [8:0] seg [9:0];?
? ? ?

? ? ? ? wire clk1s; ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? //定義一個(gè)中間變量,表示分頻得到的時(shí)鐘,用作計(jì)數(shù)器的觸發(fā) ? ? ? ?
? ? ? ??
? ? ? ??
? ? ? ? //間隔脈沖模塊,產(chǎn)生一個(gè) ? 秒針 ? ?時(shí)鐘信號(hào)
? ? ? ? parameter N1 = 12000000;
? ? always@(posedge clk) begin
? ? if(!rst)?
? ? ? ? count_1s <= 0;
? ? else if(count_1s == N1-1)
? ? ? ? count_1s<=0;
? ? else
? ? ? ? count_1s<= count_1s + 1;
? ? end
? ? //間隔脈沖模塊,產(chǎn)生一個(gè)調(diào)整 ?間隔 ? ? 信號(hào)時(shí)鐘信號(hào)
? ? parameter N2 = 1500000;
? ? always@(posedge clk) begin
? ? if(!rst)?
? ? ? ? count_05s <= 0;
? ? else if(count_05s == N2-1)
? ? ? ? count_05s<= 0;
? ? else
? ? ? ? count_05s<= count_05s + 1;
? ? end

? ? ? ?
? ? ?
? ? divide #(.WIDTH(32),.N(12000000)) u2 ( ? ? ? ? //傳遞參數(shù)
?? ??? ??? ?.clk(clk),
?? ??? ??? ?.rst_n(rst), ? ? ? ? ? ? ? ? ? //例化的端口信號(hào)都連接到定義好的信號(hào)
?? ??? ??? ?.clkout(clk1s)
?? ??? ??? ?); ??

? ? ?
? ? ?
? ? ? ?always @(posedge clk or negedge rst)
begin
? ? ? ? ? ??
? ? ? ? ? ? if (!rst) //---------------------------------------------異步清零
? ? ? ? ?? ? ? ? begin
? ? ? ? ?? ??? ? ? ?cnt1 <= 0;
? ? ? ? ?? ??? ? ? ?cnt2<=0;
? ? ? ? ?? ??? ? ? ?cnt3 <= 0;
? ? ? ? ?? ??? ? ? ?cnt4<=0;
? ? ? ? ?? ??? ? ? ?cnt5 <= 0;
? ? ? ? ?? ??? ? ? ?cnt6<=0;
? ? ? ? ?? ??? ? end
? ? ? ? ?? ?//----------------------------------------開始計(jì)時(shí)
? ? ? ? else
? ? ? ? begin
? ? ? ? ?? ?if(sw2==1)//sw2調(diào)整時(shí)間的開關(guān) ? 1:開始計(jì)時(shí) ? 0:調(diào)整時(shí)間 ? ?sw3為鬧鐘設(shè)置開關(guān) 設(shè)置鬧鐘模式sw3:1 ?退出設(shè)置鬧鐘模式sw3:0?
? ? ? ? ?? ?begin
? ? ? ? ? ? ? ? ? ? ? ? ? ? if(count_1s==N1-1 )
? ? ? ? ? ? ? ? ? ? ? ? ? ? ?? ?begin
? ? ? ? ? ? ? ? ? ? ? ? ? ? ?? ?//秒
? ? ? ? ? ? ? ? ? ? ? ? ? ? ?? ??? ? if((cnt2==5)&&(cnt1==9))
? ? ? ? ? ? ? ? ? ? ? ? ? ? ?? ? ? ? ? ?begin
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?? ??? ? ? ?cnt1<=0;
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?? ??? ? ? ?cnt2<=0;
? ? ? ? ? ? ? ? ? ? ? ? ? ? ?? ??? ? ? ?//分鐘
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?? ??? ? ? ?if((cnt4==5)&&(cnt3==9))
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?? ? ? ? ? ?begin
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?? ??? ? ? ?cnt3<=0;
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?? ??? ? ? ?cnt4<=0;
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?? ??? ? ? ?//小時(shí)
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?? ??? ? ? ?if((cnt6==2)&&(cnt5==3))
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?? ? ? ? ? ?begin
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?? ??? ? ? ?cnt5<=0;
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?? ??? ? ? ?cnt6<=0;
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?? ??? ? ? ?end
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?? ??? ?else if(cnt5==9)
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?? ??? ? ? ?begin
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?? ??? ? ? ?cnt5<=0;
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?? ??? ? ? ?cnt6<=cnt6+1;
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?? ??? ? ? ?end
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?? ? ? ? else
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?? ? ? ? ? ?begin
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?? ??? ?cnt5<=cnt5+1;
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?? ? ? ?end
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?? ?//小時(shí)
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?? ??? ? ? ?end
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?? ??? ?else if(cnt3==9)
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?? ??? ? ? ?begin
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?? ??? ? ? ?cnt3<=0;
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?? ??? ? ? ?cnt4<=cnt4+1;
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?? ??? ? ? ?end
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?? ? ? ? else
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?? ? ? ? ? ?begin
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?? ??? ?cnt3<=cnt3+1;
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?? ? ? ?end
? ? ? ? ? ? ? ? ? ? ? ? ? ? ?? ??? ? ? ?end
? ? ? ? ? ? ? ? ? ? ? ? ? ? ?? ??? ? ? ?//分鐘
? ? ? ? ? ? ? ? ? ? ? ? ? ? ?? ??? ?else if(cnt1==9)
? ? ? ? ? ? ? ? ? ? ? ? ? ? ?? ??? ? ? ?begin
? ? ? ? ? ? ? ? ? ? ? ? ? ? ?? ??? ? ? ?cnt1<=0;
? ? ? ? ? ? ? ? ? ? ? ? ? ? ?? ??? ? ? ?cnt2<=cnt2+1;
? ? ? ? ? ? ? ? ? ? ? ? ? ? ?? ??? ? ? ?end
? ? ? ? ? ? ? ? ? ? ? ? ? ? ?? ? ? ? else
? ? ? ? ? ? ? ? ? ? ? ? ? ? ?? ? ? ? ? ?begin
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?? ??? ?cnt1<=cnt1+1;
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?? ? ? ?end
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?? ? ? ?
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? //秒
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? end
? ? ? ? ? ? ? ? ? ? ? ? ? ??
? ? ? ? ? ? ? ? ? ??
? ? ? ? ? ? ? ? ? ? ? ? ? ?
? ? ? ? ? ? end
? ? ? ? ? ? //-------------------------------------------------------------------暫停調(diào)整時(shí)間
? ? ? ? ? ? if(sw2==0 && sw3==0)
? ? ? ? ? ? begin
? ? ? ? ? ? ? ? if(key[2]==1 && key[3]==1)//-----------------------------------------------調(diào)整分針
? ? ? ? ? ? ? ? ? ? begin
? ? ? ? ? ? ? ? ? ? ? ? if( ?key[0]==0 )
? ? ? ? ? ? ? ? ? ? ? ? ? ? begin
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? if(count_05s==N2-1)
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? begin
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? if((cnt4==5)&&(cnt3==9))
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?? ? ? ? ? ?begin
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?? ??? ? ? ?cnt3<=0;
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?? ??? ? ? ?cnt4<=0;
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?? ??? ? ? ?end
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?? ?else if(cnt3==9 )
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?? ??? ? ? ?begin
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?? ??? ? ? ?cnt3<=0;
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?? ??? ? ? ?cnt4<=cnt4+1;
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?? ??? ? ? ?end
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?? ?else
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?? ? ? ? ? ?begin
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?? ??? ?cnt3<=cnt3+1;
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?? ? ? ?end
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? end
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ??
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ??
? ? ? ? ? ? ? ? ? ? ? ? ? ? end
? ? ? ? ? ? ? ? ? ? ? ? else if(key[1]==0)
? ? ? ? ? ? ? ? ? ? ? ? ?
? ? ? ? ? ? ? ? ? ? ? ? ? ? begin
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? if(count_05s==N2-1)
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? begin
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? if(cnt3==0 && cnt4==0)
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? begin
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? cnt3<=9;
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? cnt4<=5;
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? end
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? else if(cnt3==0)
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? begin
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? cnt3<=9;
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? cnt4<=cnt4-1;
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? end
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? else
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? cnt3<=cnt3-1;
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? end
? ? ? ? ? ? ? ? ? ? ? ? ? ??
? ? ? ? ? ? ? ? ? ? end
? ? ? ? ? ? ? ? ? ? else
? ? ? ? ? ? ? ? ? ? ? ? begin
? ? ? ? ? ? ? ? ? ? ? ? cnt3<=cnt3;
? ? ? ? ? ? ? ? ? ? ? ? cnt4<=cnt4;
? ? ? ? ? ? ? ? ? ? ? ? end
? ? ? ? ? ? ? ? ? ? end
? ? ? ? ? ??
? ? ? ? ? ? ? ? else if(key[2]==1 && key[3]==0)//-----------------------------------------------調(diào)整時(shí)針
? ? ? ? ? ? ? ? ? ? begin
? ? ? ? ? ? ? ? ? ? ? ? if( ?key[0]==0 )
? ? ? ? ? ? ? ? ? ? ? ? ? ? begin
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? if(count_05s==N2-1)
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? begin
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? if((cnt6==2)&&(cnt5==3))
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?? ? ? ? ? ?begin
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?? ??? ? ? ?cnt5<=0;
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?? ??? ? ? ?cnt6<=0;
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?? ??? ? ? ?end
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?? ?else if(cnt5==9)
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?? ??? ? ? ?begin
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?? ??? ? ? ?cnt5<=0;
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?? ??? ? ? ?cnt6<=cnt6+1;
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?? ??? ? ? ?end
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?? ?else
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?? ? ? ? ? ?begin
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?? ??? ?cnt5<=cnt5+1;
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?? ? ? ?end
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? end
? ? ? ? ? ? ? ? ? ? ? ? ? ? end
? ? ? ? ? ? ? ? ? ? ? ? else if(key[1]==0)
? ? ? ? ? ? ? ? ? ? ? ? ?
? ? ? ? ? ? ? ? ? ? ? ? ? ? begin
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? if(count_05s==N2-1)
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? begin
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? if(cnt5==0 && cnt6==0)
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? begin
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? cnt5<=3;
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? cnt6<=2;
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? end
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? else if(cnt5==0)
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? begin
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? cnt5<=9;
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? cnt6<=cnt6-1;
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? end
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? else
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? cnt5<=cnt5-1;
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? end
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ??
? ? ? ? ? ? ? ? ? ? ? ? ? ? end
? ? ? ? ? ? ? ? ? ? ? ? else
? ? ? ? ? ? ? ? ? ? ? ? ? ? begin
? ? ? ? ? ? ? ? ? ? ? ? ? ? cnt5<=cnt5;
? ? ? ? ? ? ? ? ? ? ? ? ? ? cnt6<=cnt6;
? ? ? ? ? ? ? ? ? ? ? ? ? ? end
? ? ? ? ? ? ? ? ? ? end
? ? ? ? ? ? ? ? else if(key[2]==0 && key[3]==1)//-----------------------------------------------調(diào)整秒針
? ? ? ? ? ? ? ? ? ? begin
? ? ? ? ? ? ? ? ? ? ? ? if( ?key[0]==0 )
? ? ? ? ? ? ? ? ? ? ? ? ? ? begin
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? if(count_05s==N2-1)
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? begin
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? if((cnt2==5)&&(cnt1==9))
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?? ? ? ? ? ?begin
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?? ??? ? ? ?cnt1<=0;
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?? ??? ? ? ?cnt2<=0;
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?? ??? ? ? ?end
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?? ?else if(cnt1==9)
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?? ??? ? ? ?begin
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?? ??? ? ? ?cnt1<=0;
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?? ??? ? ? ?cnt2<=cnt2+1;
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?? ??? ? ? ?end
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?? ?else
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?? ? ? ? ? ?begin
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?? ??? ?cnt1<=cnt1+1;
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?? ? ? ?end
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? end
? ? ? ? ? ? ? ? ? ? ? ? ? ? end
? ? ? ? ? ? ? ? ? ? ? ? else if(key[1]==0)
? ? ? ? ? ? ? ? ? ? ? ? ?
? ? ? ? ? ? ? ? ? ? ? ? ? ? begin
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? if(count_05s==N2-1)
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? begin
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? if(cnt1==0 && cnt2==0)
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? begin
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? cnt1<=9;
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? cnt2<=5;
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? end
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? else if(cnt1==0)
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? begin
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? cnt1<=9;
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? cnt2<=cnt2-1;
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? end
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? else
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? cnt1<=cnt1-1;
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? end
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ??
? ? ? ? ? ? ? ? ? ? ? ? ? ? end
? ? ? ? ? ? ? ? ? ? ? ? else
? ? ? ? ? ? ? ? ? ? ? ? ? ? begin
? ? ? ? ? ? ? ? ? ? ? ? ? ? cnt1<=cnt1;
? ? ? ? ? ? ? ? ? ? ? ? ? ? cnt2<=cnt2;
? ? ? ? ? ? ? ? ? ? ? ? ? ? end
? ? ? ? ? ? ? ? ? ? end

? ? ? ? ? ? ? ??

? ? ? ? ? ? end
? ? ? ? ? ? //-----------------------------------------------設(shè)置鬧鐘?
? ? ? ? ?
? ? ? ? ? ? if(sw3==1 )
? ? ? ? ? ? begin
? ? ? ? ? ? ? ? if(key[2]==1 && key[3]==1)//-----------------------------------------------調(diào)整分針
? ? ? ? ? ? ? ? ? ? begin
? ? ? ? ? ? ? ? ? ? ? ? if( ?key[0]==0 )
? ? ? ? ? ? ? ? ? ? ? ? ? ? begin
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? if(count_05s==N2-1)
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? begin
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? if((count_set_4==5)&&(count_set_3==9))
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?? ? ? ? ? ?begin
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?? ??? ? ? ?count_set_3<=0;
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?? ??? ? ? ?count_set_4<=0;
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?? ??? ? ? ?end
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?? ?else if(count_set_3==9 )
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?? ??? ? ? ?begin
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?? ??? ? ? ?count_set_3<=0;
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?? ??? ? ? ?count_set_4<=count_set_4+1;
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?? ??? ? ? ?end
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?? ?else
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?? ? ? ? ? ?begin
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?? ??? ?count_set_3<=count_set_3+1;
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?? ? ? ?end
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? end
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ??
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ??
? ? ? ? ? ? ? ? ? ? ? ? ? ? end
? ? ? ? ? ? ? ? ? ? ? ? else if(key[1]==0)
? ? ? ? ? ? ? ? ? ? ? ? ?
? ? ? ? ? ? ? ? ? ? ? ? ? ? begin
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? if(count_05s==N2-1)
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? begin
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? if(count_set_3==0 && count_set_4==0)
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? begin
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? count_set_3<=9;
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? count_set_4<=5;
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? end
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? else if(count_set_3==0)
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? begin
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? count_set_3<=9;
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? count_set_4<=count_set_4-1;
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? end
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? else
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? count_set_3<=count_set_3-1;
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? end
? ? ? ? ? ? ? ? ? ? ? ? ? ??
? ? ? ? ? ? ? ? ? ? end
? ? ? ? ? ? ? ? ? ? else
? ? ? ? ? ? ? ? ? ? ? ? begin
? ? ? ? ? ? ? ? ? ? ? ? count_set_3<=count_set_3;
? ? ? ? ? ? ? ? ? ? ? ? count_set_4<=count_set_4;
? ? ? ? ? ? ? ? ? ? ? ? end
? ? ? ? ? ? ? ? ? ? end
? ? ? ? ? ??
? ? ? ? ? ? ? ? else if(key[2]==1 && key[3]==0)//-----------------------------------------------調(diào)整時(shí)針
? ? ? ? ? ? ? ? ? ? begin
? ? ? ? ? ? ? ? ? ? ? ? if( ?key[0]==0 )
? ? ? ? ? ? ? ? ? ? ? ? ? ? begin
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? if(count_05s==N2-1)
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? begin
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? if((count_set_6==2)&&(count_set_5==3))
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?? ? ? ? ? ?begin
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?? ??? ? ? ?count_set_5<=0;
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?? ??? ? ? ?count_set_6<=0;
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?? ??? ? ? ?end
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?? ?else if(count_set_5==9)
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?? ??? ? ? ?begin
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?? ??? ? ? ?count_set_5<=0;
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?? ??? ? ? ?count_set_6<=count_set_6+1;
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?? ??? ? ? ?end
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?? ?else
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?? ? ? ? ? ?begin
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?? ??? ?count_set_5<=count_set_5+1;
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?? ? ? ?end
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? end
? ? ? ? ? ? ? ? ? ? ? ? ? ? end
? ? ? ? ? ? ? ? ? ? ? ? else if(key[1]==0)
? ? ? ? ? ? ? ? ? ? ? ? ?
? ? ? ? ? ? ? ? ? ? ? ? ? ? begin
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? if(count_05s==N2-1)
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? begin
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? if(count_set_5==0 && count_set_6==0)
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? begin
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? count_set_5<=3;
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? count_set_6<=2;
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? end
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? else if(count_set_5==0)
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? begin
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? count_set_5<=9;
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? count_set_6<=count_set_6-1;
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? end
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? else
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? count_set_5<=count_set_5-1;
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? end
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ??
? ? ? ? ? ? ? ? ? ? ? ? ? ? end
? ? ? ? ? ? ? ? ? ? ? ? else
? ? ? ? ? ? ? ? ? ? ? ? ? ? begin
? ? ? ? ? ? ? ? ? ? ? ? ? ? count_set_5<=count_set_5;
? ? ? ? ? ? ? ? ? ? ? ? ? ? count_set_6<=count_set_6;
? ? ? ? ? ? ? ? ? ? ? ? ? ? end
? ? ? ? ? ??
? ? ? ? ? ? ? ? ? ? end
? ? ? ? ? ??
? ? ? ? ? ??
? ? ? ? ? ? end

? ? ? ? end ? ? ? ??
end
?//--------------------------------------------------------------------數(shù)碼管顯示
? ? ? ??
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? //在過程塊中只能給reg型變量賦值,Verilog中有兩種過程塊always和initial
? ? initial ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?//initial和always不同,其中語句只執(zhí)行一次
?? ? ? ?begin
? ? ? ? ? seg[0] = 9'h3f; ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? //對存儲(chǔ)器中第一個(gè)數(shù)賦值9'b00_0011_1111,相當(dāng)于共陰極接地,DP點(diǎn)變低不亮,7段顯示數(shù)字 ?0
?? ? ? ? ?seg[1] = 9'h06; ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? //7段顯示數(shù)字 ?1
?? ? ? ? ?seg[2] = 9'h5b; ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? //7段顯示數(shù)字 ?2
?? ? ? ? ?seg[3] = 9'h4f; ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? //7段顯示數(shù)字 ?3
?? ? ? ? ?seg[4] = 9'h66; ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? //7段顯示數(shù)字 ?4
?? ? ? ? ?seg[5] = 9'h6d; ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? //7段顯示數(shù)字 ?5
?? ? ? ? ?seg[6] = 9'h7d; ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? //7段顯示數(shù)字 ?6
?? ? ? ? ?seg[7] = 9'h07; ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? //7段顯示數(shù)字 ?7
?? ? ? ? ?seg[8] = 9'h7f; ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? //7段顯示數(shù)字 ?8
?? ? ? ? ?seg[9] = 9'h6f; ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? //7段顯示數(shù)字 ?9
? ? ?end
always @(posedge clk)
begin?
? ? if(sw3==0)
? ? begin
? ? ? ? if(key[2]==1 && key[3]==0)
? ? ? ? ? ? begin
? ? ? ? ? ? count5<=cnt5;
? ? ? ? ? ? count6<=cnt6;
? ? ? ? ? ? seg_led_1<=seg[count6];
? ? ? ? ? ? seg_led_2<=seg[count5];?
? ??
? ? ? ? ? ? end
? ? ? ? else if(key[2]==0 && key[3]==1)
? ? ? ? begin
? ? ? ? ? ? count1<=cnt1;
? ? ? ? ? ? count2<=cnt2;
? ? ? ? ? ? seg_led_1<=seg[count2];
? ? ? ? ? ? seg_led_2<=seg[count1];?
? ? ? ? end
? ? ? ? else
? ? ? ? begin
? ? ? ? ? ? count4<=cnt4;
? ? ? ? ? ? count3<=cnt3;
? ? ? ? ? ? seg_led_1<=seg[count4];
? ? ? ? ? ? seg_led_2<=seg[count3];?
? ? ? ? end
? ? end
? ? else
? ? begin
? ? ? ? if(key[2]==1 && key[3]==0)
? ? ? ? ? ? begin
? ? ? ? ? ? count5<=count_set_5;
? ? ? ? ? ? count6<=count_set_6;
? ? ? ? ? ? seg_led_1<=seg[count6];
? ? ? ? ? ? seg_led_2<=seg[count5];?
? ??
? ? ? ? ? ? end
? ? ? ? else if(key[2]==0 && key[3]==1)
? ? ? ? begin
? ? ? ? ? ? count1<=count_set_1;
? ? ? ? ? ? count2<=count_set_2;
? ? ? ? ? ? seg_led_1<=seg[count2];
? ? ? ? ? ? seg_led_2<=seg[count1];?
? ? ? ? end
? ? ? ? else
? ? ? ? begin
? ? ? ? ? ? count4<=count_set_4;
? ? ? ? ? ? count3<=count_set_3;
? ? ? ? ? ? seg_led_1<=seg[count4];
? ? ? ? ? ? seg_led_2<=seg[count3];?
? ? ? ? end
? ? end
? ??
end

//--------------------------------------------整點(diǎn)--三色燈閃爍
always @(posedge clk1s)
begin
? ? led_rgb2[0]<=~led_rgb2[0];//--------------------------------------------三色燈秒鐘閃爍
? ? if(cnt3==0 && cnt4==0)
? ? ? ? begin
? ? ? ? ? ? led_rgb1[0]<=~led_rgb1[0];
? ? ? ? end
? ? else
? ? ? ? begin
? ? ? ? ? ? led_rgb1[0]<=1;
? ? ? ? ? ??
? ? ? ? end
? ? ? ??

end
//-------------------------------------------鬧鐘閃爍
always @(posedge clk1s)
begin
? ? if(count_set_3 == cnt3 && count_set_4 == cnt4 && count_set_5 == cnt5 && ?count_set_6 == cnt6)
? ? begin
? ? ? ? ? ??
? ? ? ? ? ? led<=~led;
? ? end ?
? ? else
? ? begin
? ? ? ? ? ? led<=8'b 11111111;
? ? end
end

??
endmodule

3.分頻器


// Module Function:任意整數(shù)時(shí)鐘分頻
 
module divide (	clk,rst_n,clkout);
 
        input 	clk,rst_n;                       //輸入信號(hào),其中clk連接到FPGA的C1腳,頻率為12MHz
        output	clkout;                          //輸出信號(hào),可以連接到LED觀察分頻的時(shí)鐘
 
        //parameter是verilog里常數(shù)語句
	parameter	WIDTH	= 24;             //計(jì)數(shù)器的位數(shù),計(jì)數(shù)的最大值為 2**WIDTH-1
	parameter	N	= 12_000_000;             //分頻系數(shù),請確保 N < 2**WIDTH-1,否則計(jì)數(shù)會(huì)溢出
 
	reg 	[WIDTH-1:0]	cnt_p,cnt_n;     //cnt_p為上升沿觸發(fā)時(shí)的計(jì)數(shù)器,cnt_n為下降沿觸發(fā)時(shí)的計(jì)數(shù)器
	reg			clk_p,clk_n;     //clk_p為上升沿觸發(fā)時(shí)分頻時(shí)鐘,clk_n為下降沿觸發(fā)時(shí)分頻時(shí)鐘
 
	//上升沿觸發(fā)時(shí)計(jì)數(shù)器的控制
	always @ (posedge clk or negedge rst_n )         //posedge和negedge是verilog表示信號(hào)上升沿和下降沿
                                                         //當(dāng)clk上升沿來臨或者rst_n變低的時(shí)候執(zhí)行一次always里的語句
		begin
			if(!rst_n)
				cnt_p<=0;
			else if (cnt_p==(N-1))
				cnt_p<=0;
			else cnt_p<=cnt_p+1;             //計(jì)數(shù)器一直計(jì)數(shù),當(dāng)計(jì)數(shù)到N-1的時(shí)候清零,這是一個(gè)模N的計(jì)數(shù)器
		end
 
         //上升沿觸發(fā)的分頻時(shí)鐘輸出,如果N為奇數(shù)得到的時(shí)鐘占空比不是50%;如果N為偶數(shù)得到的時(shí)鐘占空比為50%
         always @ (posedge clk or negedge rst_n)
		begin
			if(!rst_n)
				clk_p<=0;
			else if (cnt_p<(N>>1))          //N>>1表示右移一位,相當(dāng)于除以2去掉余數(shù)
				clk_p<=0;
			else 
				clk_p<=1;               //得到的分頻時(shí)鐘正周期比負(fù)周期多一個(gè)clk時(shí)鐘
		end
 
        //下降沿觸發(fā)時(shí)計(jì)數(shù)器的控制        	
	always @ (negedge clk or negedge rst_n)
		begin
			if(!rst_n)
				cnt_n<=0;
			else if (cnt_n==(N-1))
				cnt_n<=0;
			else cnt_n<=cnt_n+1;
		end
 
        //下降沿觸發(fā)的分頻時(shí)鐘輸出,和clk_p相差半個(gè)時(shí)鐘
	always @ (negedge clk)
		begin
			if(!rst_n)
				clk_n<=0;
			else if (cnt_n<(N>>1))  
				clk_n<=0;
			else 
				clk_n<=1;                //得到的分頻時(shí)鐘正周期比負(fù)周期多一個(gè)clk時(shí)鐘
		end
 
        assign clkout = (N==1)?clk:(N[0])?(clk_p&clk_n):clk_p;      //條件判斷表達(dá)式
                                                                    //當(dāng)N=1時(shí),直接輸出clk
                                                                    //當(dāng)N為偶數(shù)也就是N的最低位為0,N(0)=0,輸出clk_p
                                                                    //當(dāng)N為奇數(shù)也就是N最低位為1,N(0)=1,輸出clk_p&clk_n。正周期多所以是相與
endmodule 

4.廣角分配

FPGA小腳丫開發(fā)板實(shí)現(xiàn)數(shù)字時(shí)鐘,具備調(diào)時(shí)、整點(diǎn)報(bào)時(shí)、鬧鐘功能(含verilog代碼)文章來源地址http://www.zghlxwxcb.cn/news/detail-504655.html

到了這里,關(guān)于FPGA小腳丫開發(fā)板實(shí)現(xiàn)數(shù)字時(shí)鐘,具備調(diào)時(shí)、整點(diǎn)報(bào)時(shí)、鬧鐘功能(含verilog代碼)的文章就介紹完了。如果您還想了解更多內(nèi)容,請?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點(diǎn)僅代表作者本人,不代表本站立場。本站僅提供信息存儲(chǔ)空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實(shí)不符,請點(diǎn)擊違法舉報(bào)進(jìn)行投訴反饋,一經(jīng)查實(shí),立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費(fèi)用

相關(guān)文章

  • 基于FPGA的電子時(shí)鐘設(shè)計(jì)與實(shí)現(xiàn) (在EDA開發(fā)板上實(shí)現(xiàn)電子時(shí)鐘功能)

    基于FPGA的電子時(shí)鐘設(shè)計(jì)與實(shí)現(xiàn) (在EDA開發(fā)板上實(shí)現(xiàn)電子時(shí)鐘功能)

    開發(fā)板: 此款開發(fā)板使用的是 ALTERA 公司的 Cyclone IV 系列 FPGA,型號(hào)為 EP4CE6F17C8, 256 個(gè)引腳的 FBGA 封裝。 ?題目:在EDA開發(fā)板上實(shí)現(xiàn)電子時(shí)鐘功能 要求:實(shí)現(xiàn)電子時(shí)鐘程序編寫,實(shí)現(xiàn)在7段數(shù)碼管顯示時(shí)、分、秒,使用4x4矩陣按鍵模擬調(diào)節(jié)時(shí)鐘指令輸入按鍵,并實(shí)現(xiàn)整點(diǎn)報(bào)時(shí)

    2024年02月04日
    瀏覽(39)
  • 【FPGA & Modsim】數(shù)字時(shí)鐘

    【FPGA & Modsim】數(shù)字時(shí)鐘

    實(shí)驗(yàn)題目: ?? 數(shù)字時(shí)鐘設(shè)計(jì) ????????????????????????????????? 實(shí)驗(yàn)?zāi)康模??? 掌握數(shù)字時(shí)鐘的工作原理;掌握使用數(shù)字邏輯設(shè)計(jì)集成開發(fā)環(huán)境分模塊設(shè)計(jì)數(shù)字時(shí)鐘的方法。 ????????????????????????? 實(shí)驗(yàn)內(nèi)容: 1、創(chuàng)建一個(gè)數(shù)字時(shí)鐘工程,使用

    2024年01月18日
    瀏覽(25)
  • FPGA項(xiàng)目設(shè)計(jì):數(shù)字時(shí)鐘

    FPGA項(xiàng)目設(shè)計(jì):數(shù)字時(shí)鐘

    項(xiàng)目要求: 設(shè)計(jì)一個(gè)數(shù)字時(shí)鐘,數(shù)碼管前兩位顯示小時(shí),數(shù)碼管中間兩位顯示分鐘,數(shù)碼管后面兩位顯示秒。 項(xiàng)目設(shè)計(jì): 系統(tǒng)框架圖: 計(jì)數(shù)模塊時(shí)序圖: 代碼實(shí)現(xiàn): 計(jì)數(shù)模塊: 數(shù)碼管顯示模塊: 頂層文件:

    2024年02月14日
    瀏覽(30)
  • 基于FPGA的數(shù)字時(shí)鐘系統(tǒng)設(shè)計(jì)

    基于FPGA的數(shù)字時(shí)鐘系統(tǒng)設(shè)計(jì)

    在FPGA的學(xué)習(xí)中,數(shù)字時(shí)鐘是一個(gè)比較基礎(chǔ)的實(shí)驗(yàn)案例,通過該實(shí)驗(yàn)可以更好的鍛煉初學(xué)者的框架設(shè)計(jì)能力以及邏輯思維能力,從而打好堅(jiān)實(shí)的基本功,接下來就開始我們的學(xué)習(xí)吧! 1.數(shù)碼管介紹 數(shù)碼管通俗理解就是將8個(gè)LED(包含dp部分)燈拼接到一起組成的,分別標(biāo)號(hào)為a~g。前

    2024年02月06日
    瀏覽(20)
  • FPGA課程設(shè)計(jì)——數(shù)字電子時(shí)鐘VERILOG(基于正點(diǎn)原子新起點(diǎn)開發(fā)板,支持8位或6位共陽極數(shù)碼管顯示時(shí)分秒毫秒,可校時(shí),可設(shè)鬧鐘,鬧鐘開關(guān),led指示)

    FPGA課程設(shè)計(jì)——數(shù)字電子時(shí)鐘VERILOG(基于正點(diǎn)原子新起點(diǎn)開發(fā)板,支持8位或6位共陽極數(shù)碼管顯示時(shí)分秒毫秒,可校時(shí),可設(shè)鬧鐘,鬧鐘開關(guān),led指示)

    2019 ? 級 ?? 電子科學(xué)與技術(shù) ? 專業(yè)FPGA課程設(shè)計(jì) 報(bào) ??告 2022??年 5?月 20?日 多功能數(shù)字電子鐘的設(shè)計(jì) 摘要 電子設(shè)計(jì)自動(dòng)化(EDA)是一種實(shí)現(xiàn)電子系統(tǒng)或電子產(chǎn)品自動(dòng)化設(shè)計(jì)的技術(shù),使用EDA技術(shù)設(shè)計(jì)的結(jié)果既可以用FPGA / CPLD來實(shí)施驗(yàn)證,也可以直接做成專用集成電路(ASIC)。

    2024年02月03日
    瀏覽(24)
  • 基于FPGA的數(shù)字時(shí)鐘(使用vivado)

    基于FPGA的數(shù)字時(shí)鐘(使用vivado)

    使用兩個(gè)四位數(shù)碼管,可以實(shí)現(xiàn)時(shí)鐘分鐘秒鐘顯示,高兩位設(shè)置不顯示。 換了一個(gè)新開發(fā)板,nexys4ddr,資料不多,最多使用的就是一本英文Reference Manual。 其實(shí)是老師覺得我計(jì)數(shù)器還差點(diǎn),得再練練。 Digilent NEXYS4DDR Vivado2018.3 60進(jìn)制秒鐘計(jì)數(shù)然后進(jìn)1分鐘 60進(jìn)制分鐘計(jì)數(shù)然后進(jìn)

    2024年02月03日
    瀏覽(24)
  • FPGA數(shù)字時(shí)鐘(可暫停調(diào)數(shù),含代碼)

    FPGA數(shù)字時(shí)鐘(可暫停調(diào)數(shù),含代碼)

    前段時(shí)間剛剛開始初步學(xué)習(xí)FPGA相關(guān)知識(shí),在學(xué)習(xí)了一段時(shí)間后,利用前面所學(xué)知識(shí),寫了一個(gè)數(shù)字時(shí)鐘,順便在這里寫下總結(jié),方便理解。 (本人小白一名,有錯(cuò)歡迎指出,歡迎探討) 我使用的FPGA芯片型號(hào)是Cyclone IV的EP4CE6F17C8,如有想測試實(shí)現(xiàn)效果的同學(xué),可以把后面3-

    2024年02月02日
    瀏覽(22)
  • 基于FPGA的多功能數(shù)字時(shí)鐘設(shè)計(jì)報(bào)告

    基于FPGA的多功能數(shù)字時(shí)鐘設(shè)計(jì)報(bào)告

    作品基于intel Cyclone IV E EP4CE10F17C8 FPGA板卡,主要開發(fā)環(huán)境為Quartus Ⅱ,編程并實(shí)現(xiàn)了多功能溫濕度電子鐘。本作品在實(shí)現(xiàn)顯示實(shí)時(shí)時(shí)間的基礎(chǔ)上,設(shè)計(jì)并完成了設(shè)置鬧鐘、改變鬧鐘鈴聲、顯示實(shí)時(shí)溫度和實(shí)時(shí)濕度、基于以太網(wǎng)通信協(xié)議的實(shí)時(shí)視頻傳輸?shù)裙δ?。在未設(shè)置鬧鐘時(shí)

    2024年02月05日
    瀏覽(26)
  • FPGA實(shí)驗(yàn)報(bào)告 Verilog HDL:7人表決器 巴克碼信號(hào)發(fā)生器 FPGA數(shù)字時(shí)鐘

    寫在前面:本文提供以下三個(gè)任務(wù)的思路講解和代碼實(shí)現(xiàn), 如需參考引腳配置說明,可以點(diǎn)擊下方鏈接跳轉(zhuǎn)查看完整實(shí)驗(yàn)報(bào)告 ;本實(shí)驗(yàn)使用的是Altera公司的cycloneⅢ類型的芯片。 Verilog HDL實(shí)現(xiàn):7人表決器 信號(hào)發(fā)生器 多功能數(shù)字時(shí)鐘 實(shí)驗(yàn)?zāi)繕?biāo):實(shí)現(xiàn)7人投票表決電路,支持人

    2024年02月05日
    瀏覽(26)
  • FPGA學(xué)習(xí)——FPGA實(shí)現(xiàn)電子時(shí)鐘

    FPGA學(xué)習(xí)——FPGA實(shí)現(xiàn)電子時(shí)鐘

    Cyclone IV開發(fā)板上的數(shù)碼管一共有6個(gè),我們每次只能選擇其中一個(gè)顯示,怎么解決電子時(shí)鐘時(shí)、分、秒同時(shí)顯示呢?要實(shí)現(xiàn)電子時(shí)鐘首先要了解什么是余暉效應(yīng)。 ??余暉效應(yīng)一般指視覺暫留。 視覺暫留現(xiàn)象即視覺暫?,F(xiàn)象(Persistence of vision,Visual staying phenomenon,duration o

    2024年02月09日
    瀏覽(20)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包