1樓:
module first_soft (clk, rst, led);//port
input clk, rst;
output [7:0] led;
reg [7:0] led;
reg [24:0] count;//計數器
reg [24:0] speed;//速度
reg [3:0] state;//狀態,[3]=1:正轉;[3]=0:翻轉;速度
always @(posedge clk or negedge rst)//自動變頻流水燈
if (!rst)
begin
state<=4'd0;
led<=8'b00000001;
count<=25'd0;
speed<=25'd20000000;
endelse
begin
count<=count+1'b1;
if (count==speed)
begin
count<=25'd0;//計數器復位
if (state[3]==0)//轉移發光二極體
begin
led<=led<<1'b1;
if (led==8'b01000000) state[3]<=1'b1;
endelse
begin
led<=led>>1'b1;
if (led==8'b00000010)
begin
case (state[2:0])
3'b000: begin speed<=25'd10000000; state[3:0]<=4'b0001; end
3'b001: begin speed<=25'd5000000; state[3:0]<=4'b0010; end
3'b010: begin speed<=25'd2500000; state[3:0]<=4'b0011; end
3'b011: begin speed<=25'd1200000; state[3:0]<=4'b0100; end
3'b100: begin speed<=25'd2500000; state[3:0]<=4'b0101; end
3'b101: begin speed<=25'd5000000; state[3:0]<=4'b0110; end
3'b110: begin speed<=25'd10000000; state[3:0]<=4'b0111; end
3'b111: begin speed<=25'd20000000; state[3:0]<=4'b0000; end
default: begin speed<=25'd20000000; state[3:0]<=4'b0000; end
endcase
endend
endend
endmodule
2樓:匿名使用者
正轉;[3]=0:翻轉;速度
3樓:匿名使用者
你是想用les實現呢還是用nios 2實現?
verilog 控制四種流水燈 fpga
4樓:匿名使用者
module ledwater(clk,led,s)input clk;
input[1:0]s;
output[7:0]led;
reg [7:0] led=0;
reg [1:0] olds=0;
always@(posedge clk) olds<=s;
always@(posedge clk)
if (olds^s)
case (s)
2'b00: led<=1; //*a2'b01: led<=1;
2'b10: led<=8'b1010_1010;
2'b11: led<=8'b0000_0111;
endcase
else
case (s)
2'b00: led<=;//*b
2'b01: led<=;
2'b10: led<=~led;
2'b11: led<=;
endcase
endmodule
//第一種:一個燈亮,從右往左逐個移動,並迴圈//第二種:一個燈亮,從左往右逐個移動,並迴圈//第三種:一個間一個燈亮,並交替迴圈
//第四種:三個燈亮,從右往左逐個移動,並迴圈//當然可以再多一些花樣:
//如:燈從右往左逐步點亮
// *a改為: led<=1;
// *b改為: led<= (&led)? 1: ;
verilog實現fpga流水燈的問題。 20
5樓:匿名使用者
module filter_led( input clk ,
input reset,output reg led
);reg [24:0]cnt_led;///25m分頻25bit;[27:0]cnt_led;
always @( posedge clk or negedge reset )
begin
if ( !reset )
begin
cnt_led <= 0;
led <= 0;
endelse
begin
if ( cnt_led >= 25'h0ffffff)led <= 1;
else
led <= 0;
if ( cnt_led == 25'h1ffffff )cnt_led <= 0;
else
cnt_led <= cnt_led + 25'b1;
endend
endmodule
這個絕對可以,驗證過的
用verilog寫出 實現20hz 4個led 流水燈的程式及** 10
6樓:
週期=1/20秒
時鐘晶振選用50mhz的話,0.05秒就需要clk跑5*0.01*50*10^6= 2 500 000
module led;
input clk,rst;
output ledcon;
reg [3:0] led; //led開關鎖存位reg d1,d2,d3,d4;//四個燈開關reg [21:0] cnt_5; //0.
05秒計數器reg count; // 數滿標誌位
always @(posedge clk or negedge rst)
if (!rst)
cnt_5<=22'd0;
else if(cnt_5==22'd2500000)cnt_5<=22'd0; //數滿歸零else cnt_5<=cnt_5+1'b1;
always @(posedge clk or negedge rst))
if(!rst)
count<=1'b0;
else if (cnt_5==22'd2500000)count<=1'b1;
我擦。。剩下我不寫了。你查查網上資料吧。
就是每數滿時間就依次輪換開啟d1--d4開關並且關閉前一個。
ledcon用連續賦值
求基於51微控制器的流水燈的設計
include define uint unsigned int define uchar unsigned charsbit keya p2 1 這裡看你把按鍵設定在哪個引腳上,這個是實現功能2 sbit keyb p2 2 這個是實現功能2sbit keyc p2 7 實現功能3void del...
什麼是基於B S架構的系統設計,什麼是基於B S,c s架構的系統設計
第一 什麼是c s結構。browser server 拷貝請說明來處,哈哈 說白了就是web 什麼是基於b s,c s架構的系統設計 web程式是基於bs結構的,分三層 表現層 業務邏輯層 資料層 bs就是瀏覽器伺服器 cs 客戶端伺服器。一個是通過瀏覽器,一個是通過本地的exe來進行實現。什麼是基...
樹脂流水擺件和石材流水牆那個好,流水擺件用的是什麼樹脂
如果二選抄一的話,當然是石材比較襲好,比樹脂環保,如 果造型不是很難的話,建議用石材,如果造型屬於異形的那種而用石材又比較難達到效果,也建議用其他材質,例如不鏽鋼這些。其實鐵藝更容易成型,不過用於流水的地方容易生鏽。建議你還是先試試石材,如果不行再找卓格鐵藝問下不鏽鋼的能不能實現你想要的效果。流水擺...