2022年出租车计价器方案设计书程序原理图实物图 .pdf
《2022年出租车计价器方案设计书程序原理图实物图 .pdf》由会员分享,可在线阅读,更多相关《2022年出租车计价器方案设计书程序原理图实物图 .pdf(45页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 1 页,共 45 页目 录摘要第1章引言1 1. 1 出租车计价器概述 1 1. 2 本设计任务1 1.2.1 设计任务1 1.2.2 设计要求11. 3 系统主要功能2第2章出租车计价器硬件设计 3 2.1 系统的硬件构成及功能32. 2 AT89S51单片机及其引脚说明42.3 AT24C02 引脚图及其引脚功能6精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 2 页,共 45 页2. 4 AT24C02 掉电存储单元的设计62.5 里程计算、计价单元
2、的设计72.6 数据显示单元设计8第3章系统软件设计10 3. 1 系统主程序设计10 3. 2 定时中断程序设计123. 3 里程计数中断服务程序设计123.4 中途等待中断服务程序设计123. 5 键盘服务程序设计123. 6 显示子程序服务程序设计12第4章系统调试与测试结果分析 13 4. 1 使用的仪器仪精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 3 页,共 45 页表134.2 系统调试13精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 4 页,共 45 页第 1章引言本次课程设计利用单
3、片机技术来实现一台多功能出租车计价器,具有性能可靠、电路简单、成本低等特点。1.1 出租车计价器概述计价器显示的营运金额是营运里程与价格的函数(等候时间一般折算成一定比例的里程来计算)。出租车计价器通过传感器与行驶车辆连接。出租汽车的实际里程通过传感器的脉冲信号在计价器里折算成一定的计价营运里程。目前市场上出租车计价器功能主要有具有数据的复位功能、白天/晚上转换功能、数据输出功能、计时计价功能等等,但能够进行语音播报数据信息的出租车计价器还是比较少见的,针对这一点我们来设计一款多功能出租车计价器,在原有功能的基础上增加单价输出、单价调整、路程输出、显示当前的系统时间、语音播报数据信息等功能。1
4、.2 本设计任务1.2.1 设计任务设计一款基于 AT89S51单片机的出租车计价器。1.2.2 设计要求1. 基本要求(1)不同情况具有不同的收费标准。白天晚上途中等待( 10min 开始收费)(2)能进行手动修改单价。(3)具有数据的复位功能。(4)IO 口分配的简易要求。精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 5 页,共 45 页距离检测使用霍尔开关 A44E 白天/晚上收费标准的转换开关数据的清零开关单价的调整(最好使用和按键)(5)数据输出(采用LCM103)。单价输出2 位路程输出2 位总金额输出3 位(6)按键。启动计时开关数
5、据复位(清零)白天/晚上转换2. 发挥部分(1)能够在掉电的情况下存储单价等数据。(2)能够显示当前的系统时间。(3)语音播报数据信息。1.3 系统主要功能本课程设计所设计的出租车计价器的主要功能有:数据的复位、白天/晚上转换、数据输出、计时计价、单价输出及调整、路程输出、语音播报数据信息、实现在系统掉电的时候保存单价和系统时间等信息等功能。输出采用8 段数码显示管。本电路设计的计价器不但能实现基本的计价,而且还能根据白天、黑夜、中途等待来调节单价,同时在不计价的时候还能作为时钟为司机同志提供方便。第 2 章计价器硬件设计本系统的硬件设计主要包括单片机AT89S51 、数据显示部件、 A44E
6、霍尔传感器电路、 AT24C02 掉电存储单元的设计、里程计算及计价单元的设计。在硬件设计过程中,充分利用各部件的功能,实现多功能的出租车计价器设计。精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 6 页,共 45 页2.1 系统的硬件构成及功能计价器的单片机控制方案图如图1 单片机控制方案图所示。它由以下几个部件组成:单片机AT89S51 、总金额及单价显示部件、键盘控制部件,AT24C02 掉电存储控制、里程计算单元、串中显示驱动电路等。利用单片机丰富的 IO端口,及其控制的灵活性,实现基本的里程计价功能和价格调节、时钟显示功能。不但能实现所要
7、求的功能而且能在很大的程度上扩展功能,而且还可以方便的对系统进行升级。具体电路参见附录中“多功能出租车计价器总体电路图”如图1 单片机控制方案图。图 1 单片机控制方案图2.2 AT89S51单片机及其引脚说明AT89S51 是美国 ATMEL 公司生产的低功耗,高性能CMOS 8 位单片机,片内含4KB 的可系统编程的 Flash 只读程序存储器,器件采用ATMEL 公司的高密度、非易失性存储技术生产,兼容标准8051指令系统及引脚。它集 Flash 程序存储器既可在线编程( ISP)也可用传统方法进行编程及通用 8 位微处理器于单片芯片中,具有高性价比。AT89S51是一个有40 个引脚的
8、芯片,引脚配置如图2 AT89S51 引脚配置所示。精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 7 页,共 45 页图 2 AT89S51引脚配置AT89S51芯片的 40 个引脚功能为:VCC 电源电压。GND 接地。RST 复位输入。当 RST变为高电平并保持2 个机器周期时,将使单片机复位。WDT 溢出将使该引脚输出高电平,设置SFR AUXR 的 DISRTO位(地址 8EH )可打开或关闭该功能。DISKRTO 位缺省为 RESET 输出高电平打开状态。XTAL1 反向振荡放大器的输入及内部时钟工作电路的输入。XTAL2 来自反向振荡
9、放大器的输出。P0 口一组 8 位漏极开路型双向I/O 口。也即地址 / 数据总线复用口。作为输出口用时,每位能驱动8 个 TTL 逻辑门电路,对端口写“1”可作为高阻抗输入端用。在访问外部数据存储器或程序存储器时,这组口线分时转换地址(低8位)和数据总线复用,在访问期间激活内部上拉电阻。在Flash 编程时, P0口接收指令字节,而在程序校验时,输出指令字节,校验时,要求外接上拉电阻。P1 口一个带内部上拉电阻的8 位双向I/O 口, P1 的输出缓冲级可驱动(吸收或输出电流) 4 个 TTL逻辑门电路。对端口写“1”,通过内部的上拉电阻把端口拉到高电平,此时可作输入口。作输入口使用时,因为
10、内部存在上拉电精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 8 页,共 45 页阻,某个引脚被外部信号拉低时会输出一个电流(IIL)。Flash 编程和程序校验期间, P1 接收低 8 位地址。 P1 口部分端口引脚及功能如表1 P1 口特殊功能所示。表 1 P1 口特殊功能P1口引脚特殊功能P1.5MOSI (用于 ISP 编程)P1.6MOSI (用于 ISP 编程)P1.7SCK (用于 ISP 编程)P2 口一个带内部上拉电阻的8 位双向I/O 口。 P1 的输出缓冲级可驱动(吸收或输出电流) 4 个 TTL逻辑门电路。对端口写“1”,通
11、过内部的上拉电阻把端口拉到高电平,此时可作输入口。作输入口使用时,因为内部存在上拉电阻,某个引脚被外部信号拉低时会输出一个电流(IIL)。在访问外部程序存储器或 16 位地址的外部数据存储器时,P2 口送出高 8 位地址数据。在访问8 位地址的外部数据存储器时, P2 口线上的内容在整个访问期间不改变。Flash 编程和程序校验期间, P2亦接收低 8 位地址。P3 口一个带内部上拉电阻的8 位双向I/O 口。 P3 的输出缓冲级可驱动(吸收或输出电流) 4 个 TTL 逻辑门电路。对P3 口写“ 1”时,它们被内部的上拉电阻把拉到高电并可作输入端口。作输入端口使用时,被外部拉低的P3 口将用
12、上拉电阻输出电流( IIL)。P3 口除了作为一般的I/O 口线外,更重要的用途是它的第二功能,如表2 P3 口特殊功能所示。 P3口还接收一些用于Flash 闪速存储器编程和程序校验期间的控制信号。表 2 P3 口特殊功能P3口引脚特殊功能P3.0RXD (串行输入口)P3.1TXD (串行输出口)P3.2(外部中断 0)P3.3(外部中断 1)P3.4T0(定时器 0外部输入)P3.5T1(定时器 1外部输入)P3.6(外部数据存储器写选通)P3.7(外部数据存储器读选通)PSEN/ 程序储存允许输出是外部程序存储器的读先通信号,当AT89S51由精选学习资料 - - - - - - -
13、- - 名师归纳总结 - - - - - - -第 9 页,共 45 页外部程序存储器取指令(或数据)时,每个机器周期两次PSEN/ 有效,即输出两个脉冲。当访问外部数据存储器,没有两次有效的PSEN/ 信号。EA/VPP 外部访问允许。欲使CPU仅访问外部程序存储器, EA端必须保持低电平,需注意的是:如果加密位LB1 被编程,复位时内部会锁存EA 端状态。Flash 存储器编程时,该引脚加上+12V的编程电压 VPP 。2.3AT24C02 引脚图及其引脚功能AT24C02芯片引脚配置如图3 AT24C02 引脚配置图所示。图 3 AT24C02 引脚配置图AT24C02芯片 DIP 封装
14、,共有 8 个引脚,其中:A2A0 地址引脚;SDA 、SCL I2C 总线接口;WP 写保护引脚, WP接 VSS时,禁止写入高位地址, WP接 VDD时,允许写入任何地址;VCC 电源端GND 接地端2.4 AT24C02 掉电存储单元的设计掉电存储单元的作用是在电源断开的时候,存储当前设定的单价信息。AT24C02 是ATMEL 公司的 2KB 字节的电可擦除存储芯片,采用两线串行的总线和单片机通讯,电压最低可以到2.5V,额定电流为 1mA ,静态电流 10Ua(5.5V) ,芯片内的资料可以在断电的情况下保存40 年以上,而且采用8 脚的 DIP 封装,使精选学习资料 - - - -
15、 - - - - - 名师归纳总结 - - - - - - -第 10 页,共 45 页用方便。其电路如图 4 掉电存储电路原理图所示。图 4 掉电存储电路原理图图中R8 、R10 是上拉电阻,其作用是减少AT24C02 的静态功耗,由于AT24C02 的数据线和地址线是复用的,采用串口的方式传送数据,所以只用两根线SCL (移位脉冲)和 SDA (数据 / 地址)与单片机传送数据。每当设定一次单价,系统就自动调用存储程序,将单价信息保存在芯片内;当系统重新上电的时候,自动调用读存储器程序,将存储器内的单价等信息,读到缓存单元中,供主程序使用。2.5 里程计算、计价单元的设计里程计算是通过安装
16、在车轮上的霍尔传感器A44E 检测到的信号,送到单片机,经处理计算 , 送给显示单元的。其原理如图 5 传感器测距示意图所示。图 5 传感器测距示意图由于A44E 属于开关型的霍尔器件,其工作电压范围比较宽(4.5 18V),其输出的信号符合 TTL 电平标准,可以直接接到单片机的IO 端口上,而且其最高检测频率可达到 1MHZ 。精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 11 页,共 45 页A44E 集成霍耳开关由稳压器 A、霍耳电势发生器 ( 即硅霍耳片 )B、差分放大器C 、施密特触发器 D 和OC 门输出 E 五个基本部分组成。在输
17、入端输入电压 CC V ,经稳压器稳压后加在霍耳电势发生器的两端,根据霍耳效应原理,当霍耳片处在磁场中时,在垂直于磁场的方向通以电流,则与这二者相垂直的方向上将会产生霍耳电势差H V 输出,该 H V 信号经放大器放大后送至施密特触发器整形,使其成为方波输送到OC 门输出。当施加的磁场达到(即OP B ) 时,触发器输出高电压 (相对于地电位 ) ,使三极管导通,此时OC (即rP B )时,触发器输出低电压,三极管截止,使OC 门输出高电压,我们选择了 P3.2 口作为信号的输入端,内部采用外部中断0(这样可以减少程序设计的麻烦),车轮每转一圈(我们设车轮的周长是1 M),霍尔开关就检测并输
18、出信号,引起单片机的中断,对脉计数,当计数达到1000 次时,也就是 1 公里,单片机就控制将金额自动的加增加,其计算公式:当前单价公里数=金额。2.6数据显示单元设计由于设计要求有单价(2 位)、路程( 2 位)、总金额( 3 位)显示输出,加上我们另外扩展了时钟显示(包含时分秒的显示),采用LCD 液晶段码显示,在距离屏幕 1 M之外就无法看清数据,不能满足要求,而且在白天其对比度也不能够满足要求,因此我们采用6 位LED 数码管的分屏显示,如图 6 采用 6 位LED数码管的分屏显示所示:时钟显示(图中显示为12 点 0 分46 秒)图 6 采用 6 位LED 数码管的分屏显示数据的分屏
19、的显示是通过按键S1 来实现切换的,如图 7 S1切换显示屏所示。精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 12 页,共 45 页图 7S1 切换显示屏在出租车不走的时候,按下S1,可以实现数据的分屏显示;车在行走的时候只有总金额和单价显示屏在显示,当到达目的地的时候,客户要求查看总的里程的时候,就可以按下S1 切换到里程和单价显示屏,供客户查询。显示电路的电路原理图如图 8 显示器原理图所示。图 8 显示器原理图从单片机串口输出的信号先送到左边的移位寄存器(74HC164),由于移位脉冲的作用,使数据向右移,达到显示的目的。移位寄存器74H
20、C164还兼作数码管的驱动,插头 1(header1 )接电源,插头 2(header2 )接数据和脉冲输出端。电路中的三个整流管 D1D3 的作用是降低数码管的工作电压,增加其使用寿命。精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 13 页,共 45 页第 3 章系统的软件设计本系统的软件设计主要可分为主程序模块、定时计数中断程序、里程计数中断服务程序、中途等待中断服务程序、显示子程序服务程序、键盘服务程序六大模块。下面对各部分模块作介绍。3.1 系统主程序设计在主程序模块中,需要完成对各接口芯片的初始化、出租车起价和单价的初始化、中断向量的设
21、计以及开中断、循环等待等工作。另外,在主程序模块中还需要设置启动 / 清除标志寄存器、里程寄存器和价格寄存器,并对它们进行初始化。然后,主程序将根据各标志寄存器的内容,分别完成启动、清除、计程和计价等不同的操作。主程序流程图如图9 所示。当按下 S1时,就启动计价,将根据里程寄存器中的内容计算和判断出行驶里程是否已超过起价公里数。若已超过,则根据里程值、每公里的单价数和起价数来计算出当前的累计价格,并将结果存于价格寄存器中,然后将时间和当前累计价格送显示电路显示出来。当到达目的地的时候,由于霍尔开关没有送来脉冲信号,就停止计价,显示当前所应该付的金额和对应的单价,到下次启动计价时,系统自动对显
22、示清零,并重新进行初始化过程。开始S1按下?初始化数据S4按下?设定默认单价(白天)启动计价器是否设定晚上单价按下 S4?设定中途等待单价是是否否精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 14 页,共 45 页3.2 定时中断服务程序在定时中断服务程序中,每100ms 产生一次中断,当产生 10 次中断的时候,也就到了一秒,送数据到相应的显示缓冲单元,并调用显示子程序实时显示。其程序流程如图 10 所示。3.3 里程计数中断服务程序每当霍尔传感器输出一个低电平信号就使单片机中断一次,当里程计数器对里程脉冲计满 1000 次时,使微机进入里程计
23、数中断服务程序中。在该程序中,需要完成当前行驶里程数和总额的累加操作,并将结果存入里程和总额寄存器中。3.4 中途等待中断服务程序当在计数状态下霍尔开关没有输出信号,片内的T1 定时器便被启动,每当计时到达 10分钟,就对当前金额加上中途等待的单价,以后每十分钟都自动加上中途等待的单价。当中途等待结束的时候,也就自动切换到正常的计价。3.5 显示子程序服务程序由于是分屏显示数据,所以就要用到4 个显示子程序,分别是:时分秒显示子程序( HMS_DIS)、金额单价显示子程序(CP_DIS)、路程单价显示子程序(DP_DIS)、单价调节子程序 (PA_DIS)。3.6 键盘服务程序键盘采用查询的方
24、式,放在主程序中,当没有按键按下的时候,单片机循环主程序,一旦有按键按下,便转向相应的子程序处理,处理结束再返回。如图9 主程序流程图,图10 定时中断服务程序。里程中断?到一公里?总路程加1总金额加1 传感有信号?停止计价和里程计数是是是否否S4 按下?返回时间显示是否显示金额及单价S3 按下?否是显示路程和单价S3按下?是否图 9 主程序流程图开始保护现场精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 15 页,共 45 页图 10 定时中断服务程序第 4 章系统调试与测试结果分析根据系统设计方案,本系统的调试共分为三大部分:硬件调试,软件调试
25、和软硬件联调。测试包括里程计价测试、掉电存储测试测试。4.1 使用的仪器仪表数字万用表DT9203 单片机仿真器WAVE6000 烧写器 GF2100 双踪稳压稳流电源DH1718E-5 数字示波器 TDS1002 4.2 系统调试根据系统设计方案,本系统的调试共分为三大部分:硬件调试,软件调试和软硬件联调。由于在系统设计中采用模块设计法,所以方便对各电路模块功能进行逐级测试。重置计数初值中断 10 次?数据送显示缓冲单元调用显示子程序恢复现场并中断返回否是精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 16 页,共 45 页XTAL218XTAL
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 2022年出租车计价器方案设计书程序原理图实物图 2022 出租车 计价器 方案设计 程序 原理图 实物
限制150内