news 2026/4/18 5:35:08

出租车计费系统的设计

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
出租车计费系统的设计

2 出租车计费系统的设计
2.1 出租车计费设计
实际中出租车的计费工作原理一般分成3个阶段:
(1)车起步开始计费。首先显示起步价(本次设计起步费为7.00元),车在行驶3 km以内,只收起步价7.00元。
(2)车行驶超过3 km后,按每公里2.2元计费(在7.00元基础上每行驶1 km车费加2.2元),车费依次累加。
(3)行驶路程达到或超过9 km后(车费达到20元),每公里加收50%的车费,车费变成按每公里3.3元开始计费。车暂时停止(行驶中遇红灯或中途暂时停车)不计费,车费保持不变。若停止则车费清零,等待下一次计费的开始

2.2 基本设计思想
(1) 根据出租车计费原理,将出租车计费部分由5个计数器来完成分别为counterA,counterB,counterC,counterD,counterE。①计数器A完成车费百位。②计数器B完成车费十位和个位。③计数器C完成车费角和分。④计数器D完成计数到30(完成车费的起步价)。⑤计数器E完成模拟实现车行驶100 m的功能。
(2)行驶过程中车费附加50%的功能:由比较器实现。
(3)车费的显示:由动态扫描电路来完成。用专用模块来实现,完成数据的输入即动态数据的显示。
(4)通过分析可以设计出系统的顶层框图如图2.1所示:

3 出租车计费系统的实现
3.1 系统的总体框图


3.3 系统各功能模块的实现
3.3.1 模块JIFEI的实现

模块JIFEI见图3.2。输入端口START、STOP、PAUSE、JS分别为汽车起动、停止、暂停、加速按键。
library ieee;
use ieee.std_logic_1164.all;
use ieee.std_logic_unsigned.all;
entity jifei is
port (clk,start,stop,pause,js:in std_logic;
chefei,luc:out integer range 0 to 8000);
end jifei;
architecture rtl of jifei is
begin
process(clk,start,stop,pause,js)
variable a,b:std_logic;
variable aa:integer range 0 to 100;
variable chf,lc:integer range 0 to 8000;
variable num:integer range 0 to 9;
begin
if(clk’event and clk=‘1’)then
if(stop=‘0’)then
chf:=0;
num:=0;
b:=‘1’;
aa:=0;
lc:=0;
elsif(start=‘0’)then
b:=‘0’;
chf:=700;
lc:=0;
elsif(start=‘1’ and js='1’and pause=‘1’)then
if(b=‘0’)then
num:=num+1;
end if;
if(num=9)then
lc:=lc+5;
num:=0;
aa:=aa+5;
end if;
elsif(start='1’and js='0’and pause=‘1’)then
lc:=lc+1;
aa:=aa+1;
end if;
if(aa>=100)then
a:=‘1’;
aa:=0;
else
a:=‘0’;
end if;
if(lc<300)then
null;
elsif(chf<2000 and a=‘1’)then
chf:=chf+220;
elsif(chf>=2000 and a=‘1’)then
chf:=chf+330;
end if;
end if;
chefei<=chf;
luc<=lc;
end process;
end rtl;
3.3.2 模块X的实现
模块X见图3.3。该模块把车费和路程转化为4位十进制数,daclk的频率要比clk快得多

4 系统仿真
4.1 模块X的仿真结果
将车费和路程转换成4位的十进制如图4.1所示:
输入端为:Daclk, ascore, bscore
输出端为:Age, ashi, aqian, abai, bge, bshi, bqian, bbai;

图4.1 模块X仿真波形图

4.2 模块JIFEI的仿真结果
该模块是模拟汽车的启动、停止、暂停、加速按键,如图4.2所示:
输入端口为:stop, start, pause, js;
输出端口为:clk, b;

4.3 模块XXX1的仿真结果
该模块是将车费和路程显示出来如图4.3所示
输入端为:c, a1,a2,a3,a4,b1,b2,b3,b4;
输出端为:dp,d;

图4.3 模块XXX1仿真波形图
4.4模块SE的结果验证
模块SE仿真如图4.4所示:
输入端为:clk
输出端为:a

图4.4 模块SE仿真波形图
4.5模块DI的结果验证
模块DI仿真的结果如图4.5所示
输入端为:d
输出端为:q

图4.5 模块DI仿真波形图

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/4/15 15:16:45

mklfs-v2介绍

关于 mklfs-v2.exe 工具,我需要先说明几点: 1. 工具来源 mklfs-v2.exe 通常是 LittleFS 文件系统的创建工具,主要用于嵌入式系统中创建 LittleFS 文件系统镜像。这个工具通常由以下项目提供: 主要来源: LittleFS 官方项目(ARM mbed 提供) GitHub: https://github.com…

作者头像 李华
网站建设 2026/4/14 1:01:01

婴幼儿喘息怎么办?布咳乐F6高性能罐式雾化器填补市场关键空白

如何让哮喘患儿的雾化治疗更加精准高效&#xff1f;这不仅是万千家长关注的焦灼点&#xff0c;也是儿科呼吸治疗领域亟待突破的课题。2026年初&#xff0c;高端雾化器品牌布咳乐全新产品F6系列新一代高性能罐式雾化器正式上市。该系列产品包含F6 Baby婴幼儿罐式雾化器和F6 Kids…

作者头像 李华
网站建设 2026/4/2 22:05:37

收藏!2026大模型行业招聘趋势全景报告:小白程序员转型必看

近两年来&#xff0c;大模型技术浪潮强势席卷整个科技圈&#xff0c;热度始终居高不下、持续攀升&#xff01;不管是深耕Java、C等传统技术栈的后端开发者、专注交互体验的前端工程师&#xff0c;还是扎根数据领域的数据分析师、算法工程师&#xff0c;亦或是统筹全局的架构师&…

作者头像 李华
网站建设 2026/4/16 17:23:28

银行项目信用卡业务及测试,一文搞定!

如果你是大学生、或者0基础想进入软件测试岗位的&#xff0c;那么银行项目的测试或许是一个还算不错的选择。银行系统包括但不限于&#xff1a;柜台系统、网上银行系统、信贷系统、支付系统、核心银行系统等。业务覆盖&#xff1a;存款、贷款、投资、银行卡信用卡、支付与清算、…

作者头像 李华
网站建设 2026/4/12 23:33:00

ubuntu系统如何刻录文件?(很久的问题终于解决了)

问题&#xff1a; 弄了很久很久&#xff0c;试了很多次&#xff0c;一直在ubuntu的台式机上如何刻录文件&#xff0c;今天通过尝试了多个软件&#xff0c;最终成功解决&#xff01;&#xff01;&#xff01; 1.中间尝试过直接刻录&#xff0c;但是粘贴不进去。 2.试过x3b&…

作者头像 李华