欧美极品高清xxxxhd,国产日产欧美最新,无码AV国产东京热AV无码,国产精品人与动性XXX,国产传媒亚洲综合一区二区,四库影院永久国产精品,毛片免费免费高清视频,福利所导航夜趣136
標題:
Verilog HDL語言在QuartusⅡ13.5軟件中將出租車計費器基本結(jié)構(gòu)分成5個...
[打印本頁]
作者:
liqingshen
時間:
2022-3-12 11:54
標題:
Verilog HDL語言在QuartusⅡ13.5軟件中將出租車計費器基本結(jié)構(gòu)分成5個...
以CPLD/FPGA為主體,設(shè)計并制作一臺出租車計費系統(tǒng)。
基本要求:1、里程顯示,顯示方式為XXX.X,單位為km精確到0.1km
2、里程單價顯示,顯示方式為X.XX,單位為元/km,根據(jù)每天不同的時間段有兩種情況:當時間段為06:00~23:00時單價為1.40元/km,其他時間段單價為1.80元/km;
3、費用的計算及顯示,出租車的起價為5.00元,當里程小于2km時,按起價計算費用;當里程大于2km時,按下式計算費用:
費用=里程×里程單價+等候時間×等候單價
費用顯示方式為XXX:XX,單位為元;
4、當出租車在正常運行狀態(tài)下,應(yīng)能顯示當前的時間;在熄火的情況下,時鐘必須正常運行,但是可以不顯示時鐘;
源程序如下:
module control(clk, //50MHz
reset, //復(fù)位
set, //狀態(tài)切換
start, //計費啟動開關(guān)
run, //出租車運行狀態(tài)開關(guān)
price_day_short, //白天近程單價
price_day_long, //白天遠程單價
price_night_short, //晚上近程單價
price_night_long, //晚上遠程單價
price_wait_time, //等待時間每分鐘價格
one_price_day, //白天起步價
one_price_night, //晚上起步價
short_distance, //起步價可行最大里程數(shù)
long_distance, //最大近程里程數(shù)
day_time, //白天開始時間
night_time, //晚上開始時間
start_out,
run_out,
state,
password //更改信息的密碼
);
input clk,reset,set,start,run;
input [5:0] password;
output [7:0] price_day_short,price_day_long,price_night_short,price_night_long,price_wait_time;
output [11:0] one_price_day,one_price_night;
output [7:0] short_distance,long_distance;
output [7:0] day_time,night_time;
output [3:0] state,start_out;
output run_out;
reg [7:0] price_day_short,price_day_long,price_night_short,price_night_long,price_wait_time;
reg [11:0] one_price_day,one_price_night;
reg [7:0] short_distance,long_distance;
reg [7:0] day_time,night_time;
reg [3:0] state,start_out;
reg run_out,add,sub;
initial //為了處理小數(shù)點,把實際價格擴大十倍
begin
day_time=5; //白天開始時間
night_time=23; //晚上開始時間
short_distance=3; //起步價可行最大里程數(shù)
long_distance=10; //最大近程里程數(shù)
price_day_short=24; //實際價格2.4元
price_day_long=36; //實際價格3.6元
price_night_short=31; //實際價格3.1元
price_night_long=47; //實際價格4.7元
one_price_day=140; //實際價格14元
one_price_night=180; //實際價格18元
price_wait_time=10; //實際價格1元
end
initial
begin
state<=4'd0;
end
always@(posedge clk)
begin
if(reset==1) //復(fù)位鍵
state<=4'd0;
if(set==1) //總狀態(tài)設(shè)置
if(state>=4'd14)
state<=4'd1;
else
state<=state+4'd1;
// start/run第一功能區(qū)
if(start==1&&state==0) //state=0,該功能可用 //計費啟動鍵,每按一次取反一次。
if(start_out>=4'd2) start_out<=4'd0; //總狀態(tài)設(shè)置
else start_out<=start_out+4'd1;
if(start_out==0) run_out=1;
if(start_out==1&&run==1&&state==0) //出租車行駛狀態(tài)鍵,沒按一次取反一次。
begin
run_out=~run_out;
end
// start/run第二功能區(qū)
add=start; //加,第二功能
sub=run; //減,第二功能
if(password==6'b010101) //密碼正確才能更改價格和參數(shù)
case(state)
4'd0:;
4'd1:;
4'd2:;
4'd3:
begin
if(add==1) //白天近程單價設(shè)置
if(price_day_short>=8'd99) price_day_short<=8'd0;
else price_day_short<=price_day_short+8'd1;
if(sub==1)
if(price_day_short<=8'd0) price_day_short<=8'd99;
else price_day_short<=price_day_short-8'd1;
end
4'd4: //白天遠程單價設(shè)置
begin
if(add==1)
if(price_day_long>=8'd99) price_day_long<=8'd0;
else price_day_long<=price_day_long+8'd1;
if(sub==1)
if(price_day_long<=8'd0) price_day_long<=8'd99;
else price_day_long<=price_day_long-8'd1;
end
endcase
end
endmodule
復(fù)制代碼
51hei.png
(11.55 KB, 下載次數(shù): 64)
下載附件
2022-3-12 22:28 上傳
代碼下載:
czc.7z
(7.27 MB, 下載次數(shù): 8)
2022-3-12 22:30 上傳
點擊文件名下載附件
下載積分: 黑幣 -5
歡迎光臨 (http://www.raoushi.com/bbs/)
Powered by Discuz! X3.1