出租车计价器_第1页
出租车计价器_第2页
出租车计价器_第3页
出租车计价器_第4页
出租车计价器_第5页
已阅读5页,还剩3页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、本计价器的主要功能包括:计时功能;计费功能;计程功能;LCD显示;功能:1)启动计费器,里程计数器和时间计数器从零开始,费用计费器从10元开始计算 ;2)根据出租车行驶的里程数和时间(包括停车等待时间)进行计费,当出租车启动在3公里以内,且在等待累计2分钟内时费用计数器复位为起步价10元 ;3)当出租车在行驶状态下超过3公里时,每满1公里时,费用计数器加1元 ;4)当出租车等待时间累计超过2分钟时以每分钟1元计费 。整体设计方案:Clk 输入 C9;Sw1输入 L14;TXD 输出 u8;Flash_ce 输出 k18;Lcd_e 输出 M18;LCD_RW 输出 L17;LCD_RS 输出

2、L18;LCD_d3:0 输出 R15 R16 P17 M15;模块划分1.分频电路模块:2. 时间计算模块:start: 启动信号, 当start为高电平时出租车开动,选择以公里计费;当start为低电平时出租车等待;选择以时间计费m: 输出的时间分信号s: 输出的时间秒信号Time_enable:控制计费的时间信号,当其为高电平时控制计数器按时间数计数3. 计程功能“distance_enable: 控制计费的公里信号,当其为高电平时控制计数器按路程计数distance: 输出的公里信号4. 判断控制模块 ;select_clk: 输出选择的时钟信号5. 计费模块:fee: 输出的费用信号

3、6. 显示模块:分频程序:module div(clk_50M,clk,reset);input clk_50M;input reset;output clk;wire clk_50M; wire reset;reg clk;reg 7:0 count;always (posedge clk_50M or negedge reset)begin if(!reset) begin count<=0; clk<=0; end else if(count=8'd100) begin count<=8'd0; clk<=clk; end else count&l

4、t;=count+1'd1; end endmodulemodule test; reg clk_50M; reg reset; wire clk; div u1(.clk_50M(clk_50M), .reset(reset), .clk(clk);initial #0 clk_50M=1'b0; always #5 clk_50M=clk_50M;initial begin #0 reset=1'b0; #100 reset=1'b1; end endmodule计时激励:module timemokuai(clk,reset,start,s,m,time_

5、enable);/ 端口的定义input clk,reset,start;output 7:0 s;/输出的秒output 7:0 m;/输出的分output time_enable;/输出的控制计费的信号reg 7:0 s;reg 7:0 m;wire time_enable; always(posedge clk or negedge reset)/异步复位beginif(!reset)/低电平有效begin /复位s<=8'd0;m<=8'd0;endelse if(!start)/start 信号低电平有效beginif(s3:0=9)/ 秒的低四位是9 b

6、egin s3:0<=4'd0;/清零 if(s7:4=5) / 秒的高四位是5 begin s7:4<=4'd0; /清零 if(m3:0=9) / 分的低奈皇? begin m3:0<=4'd0; /清零 if(m7:4=9) / 分的高四位是9 m7:4<=4'd0; /清零 else m7:4<=m7:4+1'd1; / 分的高四位不是9加一endelse m3:0<=m3:0+1'd1; /分的低四位不是9加一endelse s7:4<=s7:4+1'd1; / 秒的高四位不是5加一en

7、delse s3:0<=s3:0+1'd1; /秒的低四位不是9加一 end/end alwaysend assign time_enable=(m7:0>8'd2)&&(s7:0=8'd0)?1'd1:1'd0;/产生time_enable信号。endmodule/结束计时激励:module test4;reg clk;reg reset;reg start;wire 7:0 s;wire 7:0 m;wire time_enable; timemokuai u1(.clk(clk), .reset(reset), .sta

8、rt(start), .s(s), .m(m), .time_enable(time_enable);initial clk=1'b0;always #10 clk=clk;initial begin #0 reset=1'b0; #100 reset=1'b1; endinitial begin start=1'b0; #5000 start=1'b1; endendmodule 计程模块激励:module test;reg clk;reg start;reg reset;wire 7:0 distance;wire distance_enable;distancemokuai u1(.clk(clk), .reset(reset), .start(start), .distance(distance), .distance_enable(distance_enable); initial clk=1'b0; always #10 clk=clk; i

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论