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

汽車?yán)锍瘫碛?jì)程儀及蜂鳴器音樂報(bào)警Verilog代碼Quartus仿真

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

2-24010Z95602911.doc

共1個(gè)文件

名稱:汽車?yán)锍瘫碛?jì)程儀及蜂鳴器音樂報(bào)警Verilog代碼Quartus仿真

軟件:Quartus

語(yǔ)言:Verilog

代碼功能:

汽車?yán)锍瘫碛?jì)程儀及蜂鳴器音樂報(bào)警

1.計(jì)程功能,預(yù)設(shè)三個(gè)速度對(duì)應(yīng)三個(gè)開關(guān),啟動(dòng)后,數(shù)碼管上按速度乘以時(shí)間顯示里程。

2.報(bào)警功能,按下一個(gè)開關(guān)模擬前方一定距離出現(xiàn)障礙,當(dāng)計(jì)程儀再增加2公里后紅燈閃爍,蜂鳴器間斷響起,3公里后紅燈常亮,蜂鳴器不間斷響起。

3.附加功能,4公里后通過障礙,蜂鳴器播放音樂(只要調(diào)的那種)。

三個(gè)預(yù)設(shè)速度分別設(shè)成20公里每小時(shí)40公里每小時(shí)60公里每小時(shí)

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

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

1. 工程文件

2. 程序文件

3. 程序編譯

4. RTL圖

5. 管腳分配

部分代碼展示:

//顯示模塊
module?display(
input?clk,
input?[7:0]?distance,//里程
output?reg?[5:0]?bit_select,//數(shù)碼管位選
????output?reg?[7:0]?seg_select//數(shù)碼管段選
);
reg?[3:0]dis_data?=?4'd0;?//顯示值
reg?[31:0]select_num?=32'd0;//分頻計(jì)數(shù)器
reg?[2:0]geshu?=?3'd0;//數(shù)碼管個(gè)數(shù)計(jì)數(shù)
reg?[7:0]?counter_buf;//寄存器
always@(posedge?clk)
begin
????counter_buf<=distance;//里程
end
////////////////////////////////////////////位選////////////////////////////////////////////////
always?@(posedge?clk?)??//掃描頻率
begin
if(select_num?==?32'd99_999)??
begin
select_num?<=?32'd0;?
end?
else?begin
select_num?<=select_num?+1'd1;?//掃描頻率計(jì)時(shí)數(shù)字
end
end
always?@(posedge?clk?)??
begin
if(select_num?==?32'd99_999)
begin
if(geshu?==?3'd5)
begin
geshu?<=?3'd0;
end
else?begin
geshu?<=?geshu?+?1'd1;????//掃描那個(gè)管子的指示位
end
end
end
always?@(posedge?clk?)??//位選切換
begin
case?(geshu)
3'd0:
begin
bit_select<=6'b111101;
dis_data<=?counter_buf?%4'd10;//顯示個(gè)位
end
3'd1:
begin?
bit_select<=6'b111110;
dis_data?<=?counter_buf?/4'd10;//顯示十位
end
default:bit_select<=6'b111111;
endcase
end?
//段選輸出
always?@(posedge?clk)
begin
case?(dis_data)??//數(shù)字顯示碼
8'd0:?seg_select<=?~8'b1100_0000;
8'd1:?seg_select<=?~8'b1111_1001;
8'd2:?seg_select<=?~8'b1010_0100;
8'd3:?seg_select<=?~8'b1011_0000;
8'd4:?seg_select<=?~8'b1001_1001;
8'd5:?seg_select<=?~8'b1001_0010;
8'd6:?seg_select<=?~8'b1000_0010;
8'd7:?seg_select<=?~8'b1111_1000;
8'd8:?seg_select<=?~8'b1000_0000;
8'd9:?seg_select<=?~8'b1001_0000;
default:;
endcase
end
endmodule

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

  • 2-24010Z95602911.doc
    下載

相關(guān)推薦