国产成人高清亚洲,日韩无码一区二区,国产精品亚洲综合专区片高清久久久,欧美日韩国产区在线观看,sese在线,亞洲綜合久久精品無碼色欲,日韩亚洲av三级片

  • 方案介紹
  • 附件下載
  • 相關(guān)推薦
申請入駐 產(chǎn)業(yè)圖譜

電子萬年歷Verilog代碼遠(yuǎn)程云端平臺(tái)Quartus

加入交流群
掃碼加入
獲取工程師必備禮包
參與熱點(diǎn)資訊討論

2-23121G010505C.doc

共1個(gè)文件

名稱:電子萬年歷Verilog代碼遠(yuǎn)程云端平臺(tái)Quartus

軟件:Quartus

語言:Verilog

代碼功能:

任務(wù)及要求:

1.設(shè)計(jì)內(nèi)容和要求(包括設(shè)計(jì)內(nèi)容、主要指標(biāo)與技術(shù)參數(shù))

設(shè)計(jì)內(nèi)容:基于FPGA的電子萬年歷的設(shè)計(jì)。

設(shè)計(jì)要求:

(1)設(shè)計(jì)語言為 Verilog。

(2)設(shè)計(jì)基于FPGA的電子萬年歷的設(shè)計(jì):要求可以顯示年、月、日;同時(shí)可以整年、月。

日:注意閏年。

(3)采用層次化的設(shè)計(jì)。

FPGA代碼Verilog/VHDL代碼資源下載:www.hdlcode.com

本代碼已在遠(yuǎn)程云端平臺(tái)驗(yàn)證,遠(yuǎn)程云端平臺(tái)如下,其他遠(yuǎn)程云端平臺(tái)可以修改管腳適配:遠(yuǎn)程平臺(tái)照片.png

演示視頻:

設(shè)計(jì)文檔:

1. 工程文件

2. 程序文件

3. 程序編譯

4. RTL圖

5. 管腳分配

6. 仿真文件(VWF)

7. 仿真圖

部分代碼展示:

//萬年歷
`timescale??1ns/100ps
module?calendar
(
input??CLK,
input??RST,
input?day_add,//天加
input?day_sub,//天減
input?month_add,//月加
input?month_sub,//月減
input?year_add,//年加
input?year_sub,//年減
output?reg?[7:0]???year_h,//年高位
output?reg?[7:0]???year_l,//年低位
output?reg?[3:0]???month,//月
output?reg?[4:0]???day//天
);
reg?month_add_cin=0;
reg?month_sub_cin=0;
reg?year_add_cin=0;
reg?year_sub_cin=0;
reg?[4:0]???day_max??=??5'd30;//定義月最大天數(shù)
always@(posedge?CLK?or?posedge?RST)
begin
??if?(RST)
day_max?<=?5'd30;
??else
if(!(year_l[1:0]?==?0?&?year_l?!=0?|?year_h[1:0]?==0?&?year_l?==0)&(month?==?2))
day_max?<=?5'd28;//非閏年2月
else?if((year_l[1:0]?==?0?&?year_l?!=0?|?year_h[1:0]?==0?&?year_l?==0)&(month?==?2))
day_max?<=?5'd29;//閏年2月
else?if((month?==?4)|(month?==?6)|(month?==?9)|(month?==?11))
day_max?<=?5'd30;//小月
else?if((month?==?1)|(month?==?3)|(month?==?5)|(month?==?7)|(month?==?8)|(month?==?10)|(month?==?12))
day_max?<=?5'd31;//大月
else
day_max?<=?5'd30;
end
//調(diào)整天------------------------------------------------------------------------------
always@(posedge?CLK?or?posedge?RST)
????if?(RST)
day?<=?5'd1;
????else
if(day_add)//加
if(day>=day_max)
begin
day?<=?5'd1;
month_add_cin<=1;//月進(jìn)1
end
else
begin
day?<=day?+?5'd1;
???month_add_cin<=0;
end
else?if(day_sub)//減
if(day==5'd1)
begin
day?<=?day_max;
???month_sub_cin<=1;//月減1
end
else?
begin
day?<=day?-?5'd1;
???month_sub_cin<=0;//
end
else?if(day>=day_max)begin
day?<=day_max;
month_add_cin<=0;
month_sub_cin<=0;//
end
else
???begin
day?<=day;
month_add_cin<=0;
month_sub_cin<=0;//
end
//調(diào)整月------------------------------------------------------------------------------
always@(posedge?CLK?or?posedge?RST)
????if?(RST)
month?<=?4'd1;
????else
if(month_add?|?month_add_cin)//加
if(month>=4'd12)//12月
begin
month?<=?4'd1;
???year_add_cin<=1;//年加1
end
else
begin
month?<=month?+?4'd1;
???year_add_cin<=0;//
end
else?if(month_sub?|?month_sub_cin)//減
if(month==4'd1)
begin
month?<=?4'd12;
???year_sub_cin<=1;//年減1
end
else
begin
month?<=month?-?4'd1;
year_sub_cin<=0;
end
else
begin
month?<=month;
year_add_cin<=0;//
year_sub_cin<=0;
end
//調(diào)整年------------------------------------------------------------------------------
always@(posedge?CLK?or?posedge?RST)
????if?(RST)
begin//復(fù)位到2019年
year_l?<=?8'd19;//年低位
year_h?<=?8'd20;//年高位
end
????else
if(year_add?|?year_add_cin)//年加
if(year_l==8'd99?&&?year_h==8'd99)//9999年
begin
year_l?<=?8'd0;
year_h?<=?8'd0;
end
else?if(year_l==8'd99)//99年
begin
year_l?<=?8'd0;
year_h?<=year_h?+?8'd1;
end
else//低位加1
begin
year_l?<=year_l?+?8'd1;
year_h?<=year_h;
end
else?if(year_sub?|?year_sub_cin)//年減
if(year_l==8'd00?&&?year_h==8'd00)//0000年
begin
year_l?<=?8'd0;
year_h?<=?8'd0;
end
else?if(year_l==8'd00)//00年
begin
year_l?<=?8'd99;
year_h?<=year_h?-?8'd1;
end
else//低位減1
begin
year_l?<=year_l?-?8'd1;
year_h?<=year_h;
end
else
begin
year_l?<=year_l;
year_h?<=year_h;
end
endmodule

點(diǎn)擊鏈接獲取代碼文件:http://www.hdlcode.com/index.php?m=home&c=View&a=index&aid=344

  • 2-23121G010505C.doc
    下載

相關(guān)推薦