单片机原理与接口技术课程设计-基于51单片机原理出租车计价器的设计内容摘要:

主要功能有:数据的复位、 单价修改 、数据输出、 计价、单价输出及调整、路程输出 等功能。 输出采用 8 段 数码显示管。 本电路设计的计价器不但能实现基本的计价,而且还能手动 来调节单价。 方案论证与比较 方案一:采用数字电路控制。 采用传感器件,输出脉冲信号,经过放大整形作为移位寄存器的脉冲,实现计价,但是考虑到这种电路过于简单,性能不够稳定,而且不能调节单价,也不能根据天气调节计 费标准,电路不够实用。 方案二:采用单片机控制。 利用单片机丰富的 I/O 端口,及其控制的灵活性,实现基本的里程计价功能和价格调节、时钟显示功能。 通过比较以上两种方案,单片机方案有较大的活动空间,不但能实现所要求的功能而且能在很大的程度上扩展功能, 而且还可以方便的对系统进行升级, 所以我们采用后一种方案。 武汉理工大学华夏学院《 单片机原理 与接口技术》课程设计 3 第二章 出租车计价系统的硬件设计 出租车的硬件框图 图 21 键盘控制单元用于模拟传感器和进行价格的修改和复位操作。 89C52 用于进行控制运算。 串口显示驱动电路 用于用数码管显示所需的数字。 AT89C52 单片机及其引脚说明 图 22 AT89C52引脚配置 键盘 控制 P0 89C52 单 片 机 P2 串口显示驱动电路 2 位 里 程 或单价 显 示 4 位 总 价 显 示 武汉理工大学华夏学院《 单片机原理 与接口技术》课程设计 4 AT89C52 是 51 系列 单片机 的一个型号,它是 ATMEL 公司生产的。 AT89C52 是一个低电压,高性能 CMOS 8 位单片机,片内含 8k bytes 的可反复擦写的 Flash 只读程序 存储器和 256 bytes 的随机存取数据存储器( RAM),器件采用 ATMEL 公司的高密度、非易失性存储技术生产,兼容标准 MCS51 指令系统,片内置通用 8 位中央处理器和 Flash 存储单元,功能强大的 AT89C52 单片机可为您提供许多较复杂系统控制应用场合。 AT89C52 有 40 个引脚, 32 个外部双向输入 /输出( I/O)端口,同时内含 2个外中断口, 3 个 16 位可编程定时计数器 ,2 个全双工串行通信口, 2个读写口线, AT89C52 可以按照常规方法进行编程 ,但不可以在线编程 (S 系列的才支持在线编程 )。 其将通用的 微处理器和 Flash 存储器结合在一起,特别是可反复擦写的 Flash 存储器可有效地降低开发成本。 AT89C52 有 PDIP、 PQFP/TQFP 及 PLCC 等三种封装形式,以适应不同产品的需求。 键盘调整单元 图 23 S1:接 口, 功能一:正常状态下,按一次里程计数加一;功能二:修改单价时,作为切换键。 S2:接 口, 功能一:进入修改单价的界面;功能二:修改单价时,对整数位按一次加一。 S3:接 口, 跳出修改单价的界面。 S4:接 口, 功能一:在正常状态下为复位键;功能二:修改 单价时,对小数位按一次加一。 武汉理工大学华夏学院《 单片机原理 与接口技术》课程设计 5 显示 单元 显示单元由 8个 8段共阳数码管组成,采用动态扫描进行显示。 前 二 个数码管用于显示 里程数或者单价 ; 后四个 用于显示 总价格 ;电路 如 图 24 所示。 图 24 总电路接线图见附录。 武汉理工大学华夏学院《 单片机原理 与接口技术》课程设计 6 第三章 出租车计价 系统 的软件设计 系统主程序 在主程序模块中,需要完成对各参量和接口的初始化、出租车起价和单价的初始化以及计算、循环等工作。 另外,在主程序模块中还需要 设置复位和修改单价的程序。 当汽车运行起来时,就启动计价,根据里程寄存器中的内容计算和判断行 驶里程是否已超过起步价公里数。 若已超过,则根据里程值、每公里的单价数和起步价数来计算出当前的总金额,并将结果 输出在显示管中 ;中途等待时,不产生 计数 ,当时间超过等待设定值时,开始进行计时,并把等待价格加到总金额里,然后将总金额、里程和单价送数码管显示出来。 程序流程如 图 31 所示。 N Y N Y 图 31 初始化 开始 切换 金额计算 显 示 调整单价 复位 武汉理工大学华夏学院《 单片机原理 与接口技术》课程设计 7 计算 子 程序流程图 N Y 图 32 显示 子 程序 显示程序 每 点亮一个数码管,显示一位数据,利用主函数内的循环,实现动态扫描显示,同时根据数码管余辉和人眼暂留现象,即可实现显示。 里程 3 总金额 =起步价 + (里程 3) *单价 总金额 =起步价 返 回 里程计数 单元 武汉理工大学华夏学院《 单片机原理 与接口技术》课程设计 8 键盘 子 程序 键盘采用查询的方式,放在主程序中,当没有按键按下的时候,单片机循环主程序,一旦右按键按下,便转向相应的子程序处理,处理结束再返回。 流程图如 图 33所示。 Y N Y 图 33 Key2=0? Key1=0? Key3=0? Key1=0? m 为 1 且 Key4=0 修改 M值 修改。
阅读剩余 0%
本站所有文章资讯、展示的图片素材等内容均为注册用户上传(部分报媒/平媒内容转载自网络合作媒体),仅供学习参考。 用户通过本站上传、发布的任何内容的知识产权归属用户或原始著作权人所有。如有侵犯您的版权,请联系我们反馈本站将在三个工作日内改正。