基于EDA技术的出租车计费系统设计

需积分: 0 8 下载量 189 浏览量 更新于2024-08-04 1 收藏 437KB DOCX 举报
"该文档是关于使用EDA技术设计出租车计费器的实训或毕设项目资料,主要涉及单片机的应用。文档详细介绍了设计要求、设计思路、设计框图以及分频器和计程计费器两个关键模块的程序设计。" 在本项目中,学生被要求使用EDA实训仪的I/O设备和FPGA(Field-Programmable Gate Array,现场可编程门阵列)来设计和实现一台出租车计费器。设计的主要目标是模拟真实的出租车计费过程,包括起步价、公里计费和超过一定里程后的加价规则。 设计要求如下: 1. 使用EDA实训仪的硬件资源,特别是I/O接口和FPGA芯片。 2. 计费器应能根据实际行驶的公里数进行计费,起步价为7元,2公里内不增加费用。 3. 超过2公里后,每公里加收1.6元。 4. 当行驶超过10公里或费用超过20元时,每公里费用增加到2.4元,即加收50%的费用。 5. 到达目的地后,通过按钮清零计程和计费数据,以便下次使用。 设计思路与设计框图概述了整个系统的架构。计程和计费都是基于十进制数字的输入,通过脉冲计数实现。计程部分利用分频器产生秒脉冲来计数。计费部分在LED数码管上显示费用,分为个位和十位。计程器和计费器的逻辑在同一个程序中实现,而分频器则在另一个程序中实现。这两个程序最终整合成一个元器件,通过图形化方法连接在一起。在硬件仿真时,通过上升沿触发计数器,随着路程的增加,费用也会相应更新。 分频器模块的代码示例展示了如何实现分频功能。这个模块使用了一个27位的寄存器`qs`来存储计数值,并在时钟的上升沿对输入时钟`clk`进行分频。当分频器达到预设值(如49999999)时,它会重置计数值并输出一个低电平的`clk_1s`信号,表示每秒钟的脉冲。 计程计费器模块的详细设计没有给出,但可以推测它包括对输入脉冲的处理、费用计算逻辑以及与LED数码管显示的接口。 获取完整的设计资料,可以通过添加QQ联系作者或者在指定的小程序中查看和购买。这些资料可能包括更详细的电路图、程序代码以及其他相关的设计文档。