1、I 摘摘 要要 单片机是一种集成在电路芯片,是采用超大规模集成电路技术把具有数据处 理能力的中央处理器 CPU 随机存储器 RAM、只读存储器 ROM、多种 I/O 口和中断系 统、定时器/计时器等功能(可能还包括显示驱动电路、脉宽调制电路、模拟多路 转换器、 A/D 转换器等电路) 集成到一块硅片上构成的一个小而完善的计算机系统。 出租车计价器是单片机的一种典型应用。基于单片机的计价器是由单片机和 外部电路组成。包括检测模块,控制模块,人机模块。里程检测模块由外加脉冲 模拟车轮转速,控制模块包括 AT89C52 单片机和 AT24C02,人机模块包括独立键盘 和数码管动态显示。 系统性能指标
2、: 1.脉冲模拟转速; 2.显示当前单价、行驶里程和总金额; 3.里程精确到 0.1 公里。 4.切换显示。 关键词关键词:AT89C52,脉冲,中断,计费,动态显示 II 目 录 概 述. 1 一、系统工作原理 2 1.1 功能要求 2 1.2 基本原理 2 二、硬件设计 3 2.1 单片机最小系统单元 3 2.2 掉电存储单元 6 2.3 键盘调整单元 6 2.4 显示单元 7 三、 软件设计 . 9 3.1 系统主程序 9 3.2 里程计数中断程序 . 10 3.3 中途等待中断程序 . 10 3.4 计算程序 . 10 3.5 显示程序 . 11 3.6 键盘程序 . 11 四、 调试
3、改进过程及运行结果分析 . 11 4.1 动态扫描的调试和分析. 11 4.2 按键查询功能的实现 . 11 4.3 外部中断的实现 . 11 4.4 计价器系统的仿真 . 12 五、总 结 . 14 六、参考文献 . 15 附 录 C 系统源程序 16 1 概 述 随着城市建设日益加快,象征着城市面貌的出租车行业也将加速发展。 现在各大中城市出租车行业都已普及自动计价器,所以计价器技术的发展有 很好的前景。尽管小城市尚未普及,但计价器的普及也是毫无疑问的,所以 未来汽车计价器的市场还是十分有潜力的。 基于单片机 AT89C52 设计的出租车计价器不仅可方便的用软件代替硬 件,降低成本,具备一
4、般计价器的计算里程和显示总金额的功能,还具备了 掉电保持,白天、夜晚单价切换,并且还可很方便的扩展为速度测试仪,具 有很好市场前景。因此本课题基于单片机设计出租车计费系统具有非常重要 的意义。 本课题功能要求 1. 设计一个出租车计价器,并利用脉冲信号模拟车轮转动和单片机内 集成的计数器测试出出租车运行里程。 2、3 公里以内起步价 5 元,超过 3 公里每 1 公里 1.8 元。 3、功能按键,显示单价、公里数和总费用。 4、有完整的软件仿真结果和硬件电路,并用 Protel 设计系统原理图。 扩展要求: 1、低速时进入等待计时状态,等待计时超过 5 分钟后,每分钟 0.9 元。 2、夜班加
5、价功能。 一、 系统工作原理 2 1.1 功能要求 出租车计价器是根据乘客乘坐汽车行驶距离和等候时间的多少进行计 价的,并在行驶中同步显示本次消费、运行里程、运行单价以及等待时间等 信息。从起步开始,当汽车行驶里程未满 3 公里时,均按起步价计算。超过 3 公里后,实现每 1 公里单价收费,中间遇到暂停时,计程数不再增加,开 始计时收费,计程收费和计时收费的和便构成了一位乘客的车费。同时,白 天和夜晚价格不同,可以进行切换。白天单价、夜晚单价、等待单价和起步 价格都可通过独立键盘进行调节。 (默认起步价为 5 元/3 公里,里程单价白 天为 1.8 元/公里,夜晚为 2.8 元/公里,等待计时
6、单价为 0.9 元/1 分钟) 为提高计时、计价精度,确保乘客对自己消费的知情权,出租车计价器 应做到里程数精确到 0.1 公里, 同时为减少司机朋友来回调整单价以及停车 后需重设单价的麻烦,计价器应具有掉电保持功能,即当重新启动后维持原 有数值(包括总金额、等待时间、行驶里程、单价)不变,直至强制按下清 零键,计价器显示起步价(刚起步时对应总金额) 、运行单价,为下一次计 价做准备。 1.2 基本原理 计价器系统主要由五部分组成: 分别为脉冲模拟里程检测单元、 AT89C52 单片机、外扩串行 EEPROM-AT24C02、独立键盘和数码管显示。 通过脉冲模拟车速,每输入一个脉冲相当于增加 0.1 公里的路程,停止 脉冲输入相当于汽车停止进入等待状态。输入的脉冲由单片机进行处理计 费,相关数据进行总的消费金额的计算:当里程小于 3 公里时,总金额=起 步价+等待时间*等待单价; 当里程大于 3 公里时,总金额=起步价+ (里程-3) *运行单价+等待时间*等待单价;计算好的金额、等待时间、里程和单价等 数据信息都可实时地显示在数码管上。其中,等待时间可根据是否有脉冲输 出加以