安路SparkRoad基本功能电灯
<p>电灯分为两中,第一种纯组合逻辑实现,LED与switch开关各由16个,一一对应,可以直接pin2pin直连,通过SWITCH开关控制</p><p> </p>
<pre>
<code>assign led = switch;</code></pre>
<p>另外一种就是通过时序逻辑实现,用时钟频率计数,实现LED交替闪烁</p>
<p> </p>
<pre>
<code>module led_dri(
input clk ,
input rst ,
output led
);
//parameter define
parameter CLK_FS= 50_000; //1ms
//regdefine
//reg led;
reg cnt;
reg tim;
//wire defien
wirecnt_overflow ;
assign cnt_overflow = (cnt == CLK_FS - 1'b1) ;
//clk div1ms
always@(posedge clk or posedge rst)
begin
if(rst == 1'b1)
cnt<= 16'd0;
else if(cnt_overflow)
cnt<= 16'd0;
else
cnt<=cnt+ 1'b1;
end
//clk div
always@(posedge clk or posedge rst)
begin
if(rst == 1'b1)
tim<= 16'd0;
else if(tim >= 16'h2000)
tim<= 16'd0;
else
tim<=tim+ 1'b1;
end
assign led=tim ? 1'b1 : 1'b0;
assign led=tim ? 1'b1 : 1'b0;
assign led=tim ? 1'b1 : 1'b0;
assign led=tim ? 1'b1 : 1'b0;
assign led =(tim <= 16'h1000) ? 12'h000 : 12'hfff ;
endmodule
</code></pre>
<p> </p>
<p>两种功能都比较简单,是否实现LED的闪烁,简单验证单板基本功能。</p>
<p> </p>
<p> </p>
<p> </p>
功能实现了,虽然我还没有入门FPGA,只能给你加油,来占个沙发。 <p>我也刚入门FPGA,给你加油,正在学按键如何消抖,努力中。。。。</p>
<p>配个代码实现效果gif 就更好了</p>
Fred_1977 发表于 2022-4-11 09:11
我也刚入门FPGA,给你加油,正在学按键如何消抖,努力中。。。。
<p>按键消抖正点原子和黑金好像有例程可以借鉴一下</p> <p>谢谢提醒!</p>
页:
[1]