目录
一、设计任务与要求……………………………… 3
二、总框体图………………………………3
三、选择器件………………………………5
四、功能模块………………………………6
1、模块se …………………………… 6
2、模块di ……………………………7
3、模块jifei ……………………………8
4、模块zh …………………………11
5、模块xxx1 …………………………15
6、模块div_clk ……………………………17
7、模块docode3_8 ……………………………18
五、总体设计电路图
…………………………19
1、总体电路原理图………………………… 19
2、管脚分配图…………………………20
3、电路仿真结果…………………………21
4、硬件验证……………………………21
六、设计心得……………………………23
出租车计费器
设计任务与要求
1. 能实现计费功能,计费标准为:按行驶里程收费,,,当计费器计费达到或超过 20元时,每公里加收50%的车费,车停止不计费。
2、现场模拟功能:能模拟汽车启动、停止及暂停以及加速状态。
3、设计动态扫描电路:将车费和里程显示出来,各有两位小数。
二、总体框图
decode3_8
se
div _clk
di
xxx1
zh
jifei
设计思路: (1) 根据出租车计费原理,将出租车计费部分由5个计数器来完成分别为counterA,counterB,counterC,counterD,counterE。①计数器A完成车费百位。②计数器B完成车费十位和个位。③计数器C完成车费角和分。④计数器D完成计数到30(完成车费的起步价)。⑤计数器E完成模拟实现车行驶100 m的功能。
(2)行驶过程中车费附加50%的功能:由比较器实现。
(3)车费的显示:由动态扫描电路来完成。用专用模块来实现,完成数据的输入即动
设计方案比较:
方案一: 采用数字电路控制。。采用传感器件,输出脉冲信号,经过放大整形作为移位寄存器的脉冲,实现计价,但是考虑到这种电路过于简单,性能不够稳定,而且不能调节单价,也不能根据天气调节计费标准,电路不够实用,所以我们不予采用。
电源电路及保护电路
金额显示
单价显示
里程传感器
移位寄存器电路
方案二: 采用单片机控制。利用单片机丰富的IO端口,及其控制的灵活性,实现基本的里程计价功能和价格调节、时钟显示功能。。
单片机方案有较大的活动空间,不但能实现所要求的功能而且能在很大的程度上扩展功能,而且还可以方便的对系统进行升级。
缺点在于实现起来相对比较复杂,因此暂不考虑这种方法。
键盘控制
89S51
单片机
总金额显示
单价
显示
串口显示驱动电路
AT24C02掉电存储
里程计算单元
方案三: 采用VHDL语言
VHDL具有功能强大的语言结构,可以用简洁明确的源代码来描述复杂的逻辑控制。它具有多层次的设计描述功能,层层细化,最后可直接生成电路级描述。而且它还支持各种设计方法,既支持自底向上的设计,又支持自顶向下的设计;既支持模块化设计,又支持层次化设计。VHDL采用基于库(Library)的设计方法,可以建立各种可再次利用的模块。这些模块可以预先设计或使用以前设计中的存档模块,将这些模块存放到库中,就可以在以后的设计中进行复用,可以使设计成果在设计人员之间进行交流和共享,减少硬件电路设计。除此之外,采用VHDL耗费资源比较小,速度比较快,效率比较高,且易于共享和复用。
故综合以上几点我们选择VHDL语言来设计出租车计费器。
三、选择器件
模块se , 模块di , 模块jifei , 模块zh , 模块xxx1 , 模块div_clk
模块decode3_8
四、功能模块
1、模块se
说明: ,为八进制选择模块实现,该模块主要负责对不同时刻的车费路程的数值显示进行选择。
以下为该模块的程序:
library ieee;
use ;
use ;
entity se is
port(clk:in std_logic;
a:out std_logic_vector(2 downto 0));
end se;
architecture rt1 of se is
begin
process(
出租车计费器课程设计 来自淘豆网m.daumloan.com转载请标明出处.