verilog循环显示日期20170427
时间: 2023-09-16 14:11:26 浏览: 34
以下是一个基于 Verilog 的循环显示日期的例子,其中 `clk` 为时钟信号,`rst` 为复位信号,`display` 为用于显示日期的数码管:
```verilog
module date_display(clk, rst, display);
input clk, rst;
output reg [27:0] display;
reg [3:0] year;
reg [1:0] month;
reg [4:0] day;
initial begin
year = 2017;
month = 4;
day = 27;
end
always @(posedge clk) begin
if (rst) begin
year <= 2017;
month <= 4;
day <= 27;
end else begin
day <= day + 1;
case (month)
2: if (year % 4 == 0 && (year % 100 != 0 || year % 400 == 0)) begin
if (day > 29) begin
day <= 1;
month <= month + 1;
end
end else begin
if (day > 28) begin
day <= 1;
month <= month + 1;
end
end
4, 6, 9, 11: if (day > 30) begin
day <= 1;
month <= month + 1;
end
default: if (day > 31) begin
day <= 1;
if (month == 12) begin
month <= 1;
year <= year + 1;
end else begin
month <= month + 1;
end
end
endcase
end
display = {year, month, day};
end
```
该代码中,使用 `year`、`month` 和 `day` 三个变量表示日期,利用 `initial` 块进行初始化。在时钟上升沿时,根据月份和闰年判断天数增加的情况,同时进行日期的转换。最后将日期转换成一个 28 位的二进制数,用于驱动数码管的显示。
相关推荐
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![docx](https://img-home.csdnimg.cn/images/20210720083331.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)