使用 verilog 语言 编写《小星星》的简谱: |1 1 5 5|6 6 5 -|4 4 3 3|2 2 1 -| |5 5 4 4|3 3 2 -|5 5 4 4|3 3 2 -| |1 1 5 5|6 6 5 -|4 4 3 3|2 2 1 -|
时间: 2024-01-12 15:04:43 浏览: 41
使用Verilog语言编写《小星星》的简谱如下:
```verilog
module twinkle_star(
input clk,
output reg [3:0] note
);
reg [7:0] counter;
reg [3:0] index;
always @(posedge clk) begin
counter <= counter + 1;
if (counter == 50000000) begin
counter <= 0;
index <= index + 1;
case (index)
0: note <= 4'b0001; // 1
1: note <= 4'b0001; // 1
2: note <= 4'b0101; // 5
3: note <= 4'b0101; // 5
4: note <= 4'b0110; // 6
5: note <= 4'b0110; // 6
6: note <= 4'b0101; // 5
7: note <= 4'b1111; // -
8: note <= 4'b0100; // 4
9: note <= 4'b0100; // 4
10: note <= 4'b0011; // 3
11: note <= 4'b0011; // 3
12: note <= 4'b0010; // 2
13: note <= 4'b0010; // 2
14: note <= 4'b0001; // 1
15: note <= 4'b1111; // -
default: note <= 4'b0000; // Rest
endcase
end
end
endmodule
```
相关问题:
1. Verilog语言如何定义模块?
2. 如何在Verilog中使用时钟信号?
3. Verilog中的always块有什么作用?
相关推荐
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.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)